如何将日期字段与字段访问规则中的当前日期进行比较 [odoo 10]
how to compare a date field to the current date in field access rule [odoo 10]
我的记录只能在给定日期(在字段中)之前修改。
我考虑过使用记录规则,但无法将日期字段与访问规则中的当前日期进行比较。
有什么方法可以进行比较或通过其他方法实现吗?
<record id="my_rule_date_foo" model="ir.rule">
<field name="name">foo bar</field>
<field name="model_id" ref="model_my_foo"/>
<field name="domain_force">
[('many2one_field.the_limit_date','≥', 'what_to_put_here_?')]
</field>
<field name="groups" eval="[(4, ref('group_peff'))]"/>
<field name="perm_read" eval="False"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="False"/>
<field name="perm_unlink" eval="False"/>
您应该可以在 domain_force
:
中使用 context_today()
或 datetime
# Should be the best choice, considers user timezone
[('many2one_field.the_limit_date','>=', context_today())]
# If context_today() doesn't work for some reason, you can use datetime
[('many2one_field.the_limit_date','>=', datetime.date.today().strftime('%Y-%m-%d'))]
这里是the context_today
method from core and a relevant gist for reference。
我的记录只能在给定日期(在字段中)之前修改。
我考虑过使用记录规则,但无法将日期字段与访问规则中的当前日期进行比较。
有什么方法可以进行比较或通过其他方法实现吗?
<record id="my_rule_date_foo" model="ir.rule">
<field name="name">foo bar</field>
<field name="model_id" ref="model_my_foo"/>
<field name="domain_force">
[('many2one_field.the_limit_date','≥', 'what_to_put_here_?')]
</field>
<field name="groups" eval="[(4, ref('group_peff'))]"/>
<field name="perm_read" eval="False"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="False"/>
<field name="perm_unlink" eval="False"/>
您应该可以在 domain_force
:
context_today()
或 datetime
# Should be the best choice, considers user timezone
[('many2one_field.the_limit_date','>=', context_today())]
# If context_today() doesn't work for some reason, you can use datetime
[('many2one_field.the_limit_date','>=', datetime.date.today().strftime('%Y-%m-%d'))]
这里是the context_today
method from core and a relevant gist for reference。