OpenERP如何在datetime字段时使按钮不可见!=今天的日期

时间:2013-02-07 06:12:18

标签: xml openerp

在python中,我有以下字段:

'transaction_date': fields.datetime('Transaction Date')

在XML中,我有以下内容:

<field
    name="transaction_date"
    readonly="True"
    />

<button
    name="set_void"
    string="Void"
    type="object"
    icon="gtk-cancel"
    groups="mymodule.mygroup"
    attrs="{'invisible':[('transaction_date','!=', datetime.now())]}"
    />

上面的attrs代码目前不起作用,但我想做的是: 只有当transaction_date字段的日期值=今天时才能显示“Void”按钮。这可能吗?

1 个答案:

答案 0 :(得分:3)

如果您使用 v7 ,请尝试 attrs

attrs="{'invisible':[('transaction_date','!=',__import__('time').strftime('%%Y-%%m-%%d %%H:%%M:%%S'))]}"


如果您使用 v6 v6.1 ,请尝试 attrs

attrs="{'invisible':[('transaction_date','!=',time.strftime('%%Y-%%m-%%d %%H:%%M:%%S'))]}"

我们建议您使用fields.date代替fields.datetime,因为您的字段不会以日期时间格式显示,因为无论您何时选择日期&amp; 时间,秒数不匹配。

如果您使用 fields.date ,请在 attrs 中使用time.strftime('%%Y-%%m-%%d')

谢谢。