Navigation

    Odoo 中文社区

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Popular
    • Users
    • Groups

    Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

    由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解

    本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!

    开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

    如果您登录系统碰到问题,请在微信公众号留言:

    view中使用context.get()

    Odoo 开发与实施交流
    2
    2
    2785
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      iooop last edited by iooop

      了解到view中可以使用context.get来做一些动态的处理,比如根据context里面的某个元素的值,来处理是否隐藏某个字段。
      搜了一下源代码,这样的应用还是很多的,比如:odoo\addons\base\res\res_bank_view.xml,

              <record id="view_partner_bank_search" model="ir.ui.view">
                  <field name="name">res.partner.bank.search</field>
                  <field name="model">res.partner.bank</field>
                  <field name="arch" type="xml">
                      <search string="Bank Accounts">
                          <field name="bank_name" filter_domain="['|', ('bank_name','ilike',self), ('acc_number','ilike',self)]" string="Bank Name"/>
                          <field name="company_id" invisible="context.get('company_hide', True)"/>
                          <field name="partner_id"/>
                      </search>
                  </field>
              </record>
      

      对于上面的代码,在视图中获取key为company_hide的context值,从而决定是否隐藏字段company_id。
      我尝试搜索源代码,看是在哪里设置company_hide的,但是没有找到任何处理的地方。我的问题是,这里的company_hide是在哪里产生和设置的?如果没有任何地方设置company_hide,那上面的代码设置那段invisible的处理又有什么意义?

      1 Reply Last reply Reply Quote 0
      • digitalsatori
        digitalsatori 管理员 last edited by

        应该是没有清理干净的legacy code

        1 Reply Last reply Reply Quote 0
        • First post
          Last post