attrs="{'invisible': [('rule_id.type_test', '!=', 'A')]}" 在上面的代码不起作用,我怎么能解决这个问题?
class test_list(models.Model):
_name = 'test.list'
type_test = fields.Selection([('A', 'aaaa'),('B','bbbbb')], default='A', string="Type", required=True)
rule_list = fields.One2many('test.rule', 'rule_id')
Run Code Online (Sandbox Code Playgroud)
class test_rule(models.Model):
_name = 'test.rule'
rule_id = fields.Many2one('test.list', required=True)
ul = fields.Many2one('product.ul', string='Package Logistic Unit'
Run Code Online (Sandbox Code Playgroud)
<record model="ir.ui.view" id="rules_form_view">
<field name="name">test.rules.form.view</field>
<field name="model">test.rule</field>
<field name="arch" type="xml">
<form string="Test Rules">
<field name="ul" attrs="{'invisible': [('rule_id.type_test', '!=', 'A')]}"/>
</form>
</field>
</record>
Run Code Online (Sandbox Code Playgroud) 我在表单视图中有这个字段:
<field name="value"/>
Run Code Online (Sandbox Code Playgroud)
当有人想要添加新值时,我想从字段中获取值,这可能是我$_GET['value']在PHP中可能做的.
简单的例子:
我希望,当用户插入一个值时,程序检查它是否大于所有值的总和,并打印如下错误消息:
无法添加该值,因为它大于所有值的总和
到目前为止我写过这个:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="action_test" model="ir.actions.act_window">
<field name="name">Insert</field>
<field name="res_model">test.odoo</field>
<field name="view_mode">form,tree</field>
</record>
<record id="view_tree_test" model="ir.ui.view">
<field name="name">Inset.tree</field>
<field name="model">test.odoo</field>
<field name="arch" type="xml">
<tree string="T">
<field name="create_uid"/>
<field name="value" sum="Total Sum"/>
</tree>
</field>
</record>
<record id="view_from_test" model="ir.ui.view">
<field name="name">Inset.form</field>
<field name="model">test.odoo</field>
<field name="arch" type="xml">
<form string="T_Form">
<group>
<field name="value"/>
</group>
</form>
</field>
</record>
<menuitem name="Test Module" id="main_menu_test" sequence="3"/>
<menuitem name="TEST" id="sub_menu" parent="main_menu_test"/>
<menuitem action="action_test" id="action_menu" parent="sub_menu" /> …Run Code Online (Sandbox Code Playgroud)