Python 如何在表单视图中执行查找-OpenERP 7

Python 如何在表单视图中执行查找-OpenERP 7,python,xml,openerp,Python,Xml,Openerp,我需要根据另一个字段的值控制该字段的可见性。另一个字段是引用。我想我需要以与使用browse或search方法的模块中相同的方式进行查找。但从一个角度看,该怎么办呢 视图: 撇开硬编码不谈,你几乎拥有了它。只要确保表单上有country\u id字段,就可以在org\u no上的属性中使用它。如果你不想让用户看到这个国家,就把它作为一个不可见的字段来显示。字段\u视图\u get是一个静态的解决方案问题,一旦你在域上设置了值,视图就会跟随它,所以如果这是你的要求,你可以使用它 或者,您可以使用下

我需要根据另一个字段的值控制该字段的可见性。另一个字段是引用。我想我需要以与使用
browse
search
方法的模块中相同的方式进行查找。但从一个角度看,该怎么办呢

视图:


撇开硬编码不谈,你几乎拥有了它。只要确保表单上有
country\u id
字段,就可以在
org\u no
上的属性中使用它。如果你不想让用户看到这个国家,就把它作为一个不可见的字段来显示。

字段\u视图\u get
是一个静态的解决方案问题,一旦你在域上设置了值,视图就会跟随它,所以如果这是你的要求,你可以使用它

或者,您可以使用下面的解决方案来实现更好的动态行为

  • 在您想要控制可见性的对象上取一个
    布尔
    字段,并将其作为不可见添加到字段中
  • 根据您想要控制可见性的内容编写字段的
    on\u change
    方法,并使用on change方法设置上述布尔字段的值
  • 使用
    attrs
    上的第一步
    boolean
    字段按需显示字段
    谢谢

    您可以直接使用:

    <field name="org_no" attrs="{'invisible':[('country_id.name','!=','Sweden')]}"/>
    
    
    

    由于country_id仅存储在v7中的manyOne字段中选择的国家的id,因此country_id是res.country模型的外部引用。因此,在表单中,我只能看到内部引用—一些与国家/地区相关的数字ID(很明显,不同的安装可能会有所不同)。无论如何,我找到了一种方法,借助于
    字段视图获取
    ,这里也描述了这是我尝试的第一件事-在域名[[“country\u id.name”、“!=”、“Sweden”]]中获取了
    未知字段country\u id.name
    不确定您在这里指的是静态的,但调用起来很神秘(因为找不到任何文档或像样的示例)
    setup\u modifiers
    from
    field\u view\u get
    如我前面提到的示例所示,使其非常动态(即跟踪字段的更改并动态更新整个表单)。
    country_id: fields.many2one('res.country', 'Country')
    
    <field name="org_no" attrs="{'invisible':[('country_id.name','!=','Sweden')]}"/>