跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 开发与实施交流
  4. 关于继承partner视图无法隐藏email的问题

关于继承partner视图无法隐藏email的问题

已定时 已固定 已锁定 已移动 已解决 Odoo 开发与实施交流
4 帖子 2 发布者 757 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 阿 离线
    阿 离线
    阿巴阿巴
    写于 最后由 编辑
    #1

    目前需要继承partner的表单视图,外部ID是base.view_partner_form。

    问题一:
    我能够成功隐藏其它字段,但是不能隐藏email,

    <xpath expr="//field[@name='email']" position="attributes">
        <attribute name="invisible">1</attribute>
    </xpath>
    

    使用以上的代码,实际出现的界面如下图1:
    4b7c4305-210a-4a77-abf4-0db78c68b507-image.png 图1

    它只隐藏了email的输入框,但是没有完全隐藏email整个字段,看了这个视图的源代码(如下图2),没有发现其它阻碍隐藏的属性。那为什么隐藏会没有成功呢?希望得到解答或帮助。
    bfcc1c72-96ca-478c-8eba-89741363dfbd-image.png 图2

    问题二:
    此外,在图1中,page联系人&地址没有name属性,无法通过以下代码进行隐藏。想询问可以有其它方法能够隐藏这个吗?

    <xpath expr="//page[@name='']" position="attributes">
        <attribute name="invisible">1</attribute>
    </xpath>
    
    digitalsatoriD 1 条回复 最后回复
    0
    • digitalsatoriD 离线
      digitalsatoriD 离线
      digitalsatori 管理员
      在 回复了 阿巴阿巴 最后由 编辑
      #2

      @阿巴阿巴 在 关于继承partner视图无法隐藏email的问题 中说:

      它只隐藏了email的输入框,但是没有完全隐藏email整个字段,看了这个视图的源代码(如下图2),没有发现其它阻碍隐藏的属性。那为什么隐藏会没有成功呢?希望得到解答或帮助。

      这个email字段的视图在mail模块中被修改过了:

      <xpath expr="//field[@name='email']" position="replace">
                          <field name="is_blacklisted" invisible="1"/>
                          <label for="email" class="oe_inline"/>
                          <div class="o_row o_row_readonly">
                              <button name="mail_action_blacklist_remove" class="fa fa-ban text-danger" title="This email is blacklisted for mass mailings. Click to unblacklist." type="object" context="{'default_email': email}" groups="base.group_user" attrs="{'invisible': [('is_blacklisted', '=', False)]}"/>
                              <field name="email" widget="email" context="{'gravatar_image': True}" attrs="{'required': [('user_ids','!=', [])]}"/>
                          </div>
                      </xpath>
      

      所以要隐藏email字段的label还需要:

      <xpath expr="//label[@for='email']" position="attributes">
        <attribute name="invisible">1</attribute>
      </xpath>
      

      @阿巴阿巴 在 关于继承partner视图无法隐藏email的问题 中说:

      问题二:
      此外,在图1中,page联系人&地址没有name属性,无法通过以下代码进行隐藏。想询问可以有其它方法能够隐藏这个吗?

      有name属性啊
      res_partner_views_xml___Users_tony_odoo_projects_biw_odoo_src_odoo_addons_base_views_.png
      当然你可以学习一下xpath语法,没有name也是可以定位的。

      【上海先安科技】(tony AT openerp.cn)

      阿 1 条回复 最后回复
      0
      • 阿 离线
        阿 离线
        阿巴阿巴
        在 回复了 digitalsatori 最后由 编辑
        #3

        @digitalsatori
        问题一:
        通过您的办法解决了我的问题,非常感谢!
        同时我也发现,在“编辑视图:表单”里没办法看到这个视图被继承后的属性,但是通过“字段视图获取”,能看到继承的属性。
        c2d82193-f1c3-4669-84a1-1629d142bce5-image.png
        下图是找到了label属性的:
        3a04d77c-b079-43f3-868f-08612fafe961-image.png
        问题二:
        我的版本是odoo13,我仍然没有发现page里有name属性,通过查找//page[@autofocus='autofocus']来定位到这个页进行隐藏的。

        此外,我有个新问题,关于多个查找路径的,我的代码如下:

        <xpath expr="//page[@autofocus='autofocus'] | //page[@name='sales_purchases'] | //page[@name='internal_notes']" 
                               position="attributes">
            <attribute name="invisible">1</attribute>
        </xpath>
        

        这段代码并没有按照预期进行三个页面的隐藏,实际效果是只隐藏了第一个页面。请问这个原因是什么?假如我要隐藏多个页面,有没有简洁的写法,而不是每个页面写一个查找?

        digitalsatoriD 1 条回复 最后回复
        0
        • digitalsatoriD 离线
          digitalsatoriD 离线
          digitalsatori 管理员
          在 回复了 阿巴阿巴 最后由 编辑
          #4

          @阿巴阿巴 在 关于继承partner视图无法隐藏email的问题 中说:

          请问这个原因是什么?假如我要隐藏多个页面,有没有简洁的写法,而不是每个页面写一个查找?

          就我所知每个页面都要有一个xpath的定位,没有简洁写法。

          【上海先安科技】(tony AT openerp.cn)

          1 条回复 最后回复
          0
          • digitalsatoriD digitalsatori 将这个主题转为问答主题,在
          • digitalsatoriD digitalsatori 将这个主题标记为已解决,在

          • 登录

          • 没有帐号? 注册

          • 登录或注册以进行搜索。
          • 第一个帖子
            最后一个帖子
          0
          • 版块
          • 标签
          • 热门
          • 用户
          • 群组