Различные методы определения действий Cron в Odoo 8

В Odoo 8 поле user_idв действии cron относится к пользователю, который будет выполнять задание cron. Это поле определяет, какие права доступа и разрешения пользователя будут применены при запуске задания cron.

Вот несколько способов определить действие cron с примерами кода в Odoo 8:

Метод 1. Использование кода Python в модели

Вы можете определить действие cron в модели, используя декоратор @api.multiи декоратор @api.model_cron. Вот пример:

from openerp import models, fields, api
class MyModel(models.Model):
    _name = 'my.model'
    @api.multi
    @api.model_cron('0 0 * * *', user_id='user_id', args=(), name='My Cron Job')
    def my_cron_job(self):
        # Your code here
        pass

В приведенном выше примере для параметра user_idустановлено значение 'user_id', что означает, что будет использоваться идентификатор пользователя, указанный в поле user_id. действия cron.

Метод 2: использование XML в файле данных

Вы также можете определить действие cron, используя XML в файле данных. Вот пример:

<openerp>
    <data>
        <record id="my_cron_job_action" model="ir.cron">
            <field name="name">My Cron Job</field>
            <field name="model" ref="my_model"/>
            <field name="function">my_cron_job</field>
            <field name="args">(1,)</field>
            <field name="interval_number">1</field>
            <field name="interval_type">days</field>
            <field name="user_id" ref="base.user_admin"/>
            <field name="numbercall">-1</field>
            <field name="doall" eval="False"/>
            <field name="active" eval="True"/>
        </record>
    </data>
</openerp>

В приведенном выше примере в поле user_idустановлена ​​ссылка base.user_admin, что означает, что задание cron будет выполнено пользователем с идентификатором, указанным в

s>10запись.

Метод 3: использование интерфейса Odoo

Вы также можете определить действие cron, используя интерфейс Odoo. Вот как это можно сделать:

  1. Перейдите в меню «Настройки».
  2. Нажмите «Технические», а затем «Автоматизация», чтобы получить доступ к действиям cron.
  3. Нажмите «Создать», чтобы создать новое действие cron.
  4. Заполните обязательные поля, включая поле user_id.
  5. Сохраните действие cron.