如何在字段odoo 11中将默认值设置为年份?

问题描述

fiscal_id = fields.Many2one('account.fiscalyear','Financial Year',default= '2020-2021')

我希望在 many2one 字段中的默认值为 2020-2021,但我不知道如何分配默认值??

解决方法

您可以使用默认的 lambda 函数如下:

fiscal_id = fields.Many2one('account.fiscalyear','Financial Year',default=lambda self: self.env.ref('my_module.xml_id_related_to_the_record'))

在这种情况下,您需要一个 xml id 来从 xml 文件创建数据记录,如下所示:

<odoo>
  <data>


    <record id="xml_id_related_to_the_record" model="account.fiscalyear">
      <field name="name">2020-2021</field>
    </record>


  </data>
</odoo>

请注意,您可能需要根据您的模型定义正确映射 xml 数据。

不要犹豫,让我们知道它是否有效

,

您可以使用函数,使用当前日期搜索默认记录并返回相应记录。

在以下示例中,我们返回找到的第一条记录并将其设置为 fiscal_id 字段的默认值。

@api.model
def _get_default_fiscalyear(self):
    return self.env['account.fiscalyear'].search([],limit=1)

fiscal_id = fields.Many2one('account.fiscalyear',default= _get_default_fiscalyear)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...