python – 隐藏One2many字段有条件的Odoo / OpenERP
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 隐藏One2many字段有条件的Odoo / OpenERP,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1780字,纯文字阅读大概需要3分钟。
内容图文
我正在Odoo 8.0设置的客户部分中创建一个名为Master Account的选项.如果选中,则会将另一个帐户设置为祖父母.这对于拥有多个位置但只有一个结算中心的公司/客户非常有用.我能够应用此功能,但现在我不想显示将主帐户设置为已设置为某人主人的公司的选项.
我尝试过以下内容并不起作用:
Python
from openerp import models, fields, api, _
class res_partner(models.Model):
_inherit = 'res.partner'
related_partner_id = fields.Many2one('res.partner', 'Master Account')
related_partner_ids = fields.One2many('res.partner', 'Master Account')
XML
<?xml version="1.0" ?>
<openerp>
<data>
<record model="ir.ui.view" id="base_view_partner_demo_inherit">
<field name="name">res.partner.form.demo</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="arch" type="xml">
<field name="website" position="after">
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','>', '0')]}"/>
<field name="related_partner_ids" invisible="1"/>
<label string="Master Account" attrs="{'invisible': [['related_partner_id', '!=', False]]}"/>
</field>
</field>
</record>
</data>
</openerp>
任何帮助将不胜感激.我是Odoo的新手.
解决方法:
试试以下,
from openerp import models, fields, api, _
class res_partner(models.Model):
_inherit = 'res.partner'
related_partner_id = fields.Many2one('res.partner', 'Master Account')
related_partner_ids = fields.One2many('res.partner', 'related_partner_id', 'Master Account')
One2many也需要反向字段id.
并设置这样的attrs,
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','!=', False)]}"/>
或者你应该这样写
<field name="related_partner_id" attrs="{'invisible': [('related_partner_ids','!=', [])]}"/>
对于Many2many领域,应该以下列方式应用attrs.
<field name="m2m_field" attrs="{'invisible': [('m2m_field','=', [(6,0,[])])]}"/>
内容总结
以上是互联网集市为您收集整理的python – 隐藏One2many字段有条件的Odoo / OpenERP全部内容,希望文章能够帮你解决python – 隐藏One2many字段有条件的Odoo / OpenERP所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。