0

我正在尝试在 odoo 12 中安装一个模块,其中包含一个具有 ir.cron 模块类型的视图。但它向我显示了这个错误:
我不知道如何纠正它。任何人都可以帮助我吗?

odoo.tools.convert.ParseError: "ERREUR:  une valeur NULL viole la contrainte NOT NULL de la colonne « model_id »
DETAIL:  La ligne en échec contient (434, Annuler la remise mensuelle du client, ir.actions.server, null, null, action, 1, 2019-03-13 14:48:25.710923, 1, 2019-03-13 14:48:25.710923, ir_cron, object_write, 5, null, null, # Available variables:
#  - env: Odoo Environment on which the a..., null, null, null, null, null, null, null, days, specific, null, user_id)
" while parsing /home/*/PycharmProjects/Odoo12/*/sale_discount_total/views/cron.xml:5, near
<record model="ir.cron" id="deactivate_partner_discount_cron">
            <field name="name">Annuler la remise mensuelle du client</field>
            <field name="interval_number">1</field>
            <field name="interval_type">months</field>
            <field name="numbercall">-1</field>
            <field eval="False" name="doall"/>
            <field eval="'res.partner'" name="model"/>
            <field eval="'deactivate_partner_discount'" name="function"/>
            <field eval="'()'" name="args"/>
        </record>
4

2 回答 2

1

问题在于行<field eval="'res.partner'" name="model"/>,实际的字段名称是model_id. 您必须将字段设置如下

<field name="model_id" ref="model_res_partner"/>

与您可以使用模型 xml idmodel_idMany2one关系一样,模型 xml id 是.ir.modelrefres.partnermodel_res_partner

于 2019-03-13T16:06:16.040 回答
1

ERREUR: une valeur NULL viole la contrainte NOT NULL de la Colonne « model_id »

粗略翻译,这个错误说:

错误:NULL 值违反列上的 NOT NULL 约束model_id

如果您查看现有ir.cron记录示例的核心代码,您将看到一个名为 的 XML 节点model_id,这是创建 cron 记录所必需的。

您正在使用:

<field eval="'res.partner'" name="model"/>

但在 Odoo 12 中,这是意料之中的:

<field name="model_id" ref="model_res_partner"/>

我在任何地方的 Odoo 文档中都没有看到这一点,所以我将链接到一些源代码,以便您可以与您的记录进行比较。

于 2019-03-13T16:27:39.153 回答