跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 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. 如何在继承的视图中有重复的field name的字段后添加新字段的方法

如何在继承的视图中有重复的field name的字段后添加新字段的方法

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

    ;D校长过奖了,还得多谢校长指点啦

    我还有个问题想咨询一下,xpath 和 name 定位的方式有什么区别?哪个比较好呢?

    1 条回复 最后回复
    0
    • R 离线
      R 离线
      rufeng1199
      写于 最后由 编辑
      #5

      name 一般能唯一定位的话,用name就可以了,xpath则可以精确定位,依据DOM规则

      1 条回复 最后回复
      0
      • digitalsatoriD 离线
        digitalsatoriD 离线
        digitalsatori 管理员
        写于 最后由 编辑
        #6

        你其实已经发现了。
        用字段名定位的方法,对某种情况下是无法处理的。必须用xpath
        比如,要定位销售订单行上的name字段,用字段名定位就做不到了。
        因为销售订单(sale.order)上有name字段,在order的视图里同样有订单行(sale.order.line)的name字段, 这就必须用xpath来定位了。
        另外,xpath提供灵活定位方式可以通过相对路径定位到xml的任何一个节点,比如search view里的filter元素等等
        象上面的例子也可以用下面这些方法定位:

        <xpath expr="//field[@name='customer']/field[@name='supplier']" position="after">
        

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

        1 条回复 最后回复
        0
        • KevinKongK 离线
          KevinKongK 离线
          KevinKong
          写于 最后由 编辑
          #7

          learned a lot  & thanks a lot.

          1 条回复 最后回复
          0
          • KevinKongK 离线
            KevinKongK 离线
            KevinKong
            写于 最后由 编辑
            #8

            报告校长,代码

            <xpath expr="//field[@name='customer']/field[@name='supplier']" position="after">
            


            还是行不通 :-\,好像customer跟supplier是并列的。

            我试了一下,这样是可以的:

            <br />xpath expr=&quot;//page[@string=&#039;Sales &amp;amp; Purchases&#039;]/group/group/field[@name=&#039;supplier&#039;]&quot; position=&quot;after&quot;&gt;<br />
            
            1 条回复 最后回复
            0
            • digitalsatoriD 离线
              digitalsatoriD 离线
              digitalsatori 管理员
              写于 最后由 编辑
              #9

              不好意思,试试下面的:


              &lt;xpath expr=&quot;//field[@name=&#039;customer&#039;]/../field[@name=&#039;supplier&#039;]&quot; position=&quot;after&quot;&gt;
              

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

              1 条回复 最后回复
              0
              • KevinKongK 离线
                KevinKongK 离线
                KevinKong
                写于 最后由 编辑
                #10

                试了,好用 ;D

                1 条回复 最后回复
                0
                • mrshellyM 离线
                  mrshellyM 离线
                  mrshelly
                  写于 最后由 编辑
                  #11

                  高手论剑~~~~~~~~~~~~~~~~~~~~~~~~

                  我来收门票~!!!

                  1 条回复 最后回复
                  0
                  • C 离线
                    C 离线
                    ccdos
                    写于 最后由 编辑
                    #12

                    [quote author=digitalsatori link=topic=16281.msg27626#msg27626 date=1394788274]
                    不好意思,试试下面的:


                    &lt;xpath expr=&quot;//field[@name=&#039;customer&#039;]/../field[@name=&#039;supplier&#039;]&quot; position=&quot;after&quot;&gt;
                    


                    [/quote]

                    求教一下吃个快餐,  这里的两个点 ..  怎么理解?

                    1 条回复 最后回复
                    0
                    • KevinKongK 离线
                      KevinKongK 离线
                      KevinKong
                      写于 最后由 编辑
                      #13

                      [quote author=ccdos link=topic=16281.msg27632#msg27632 date=1394885702]
                      [quote author=digitalsatori link=topic=16281.msg27626#msg27626 date=1394788274]
                      不好意思,试试下面的:


                      &lt;xpath expr=&quot;//field[@name=&#039;customer&#039;]/../field[@name=&#039;supplier&#039;]&quot; position=&quot;after&quot;&gt;
                      


                      [/quote]

                      求教一下吃个快餐,  这里的两个点 ..  怎么理解?
                      [/quote]

                      个人感觉应该跟linux中的cd ..差不多意思,先找到customer的父节点,然后在该父节点下找supplier。

                      1 条回复 最后回复
                      0
                      • wjfonhandW 离线
                        wjfonhandW 离线
                        wjfonhand
                        写于 最后由 编辑
                        #14

                        明知道是两个,可以直接找第二个(或者叫最后一个的)

                        http://shine-it.net/index.php?topic=14508.0

                        GoodERP -- Odoo China fork

                        1 条回复 最后回复
                        0
                        • KevinKongK 离线
                          KevinKongK 离线
                          KevinKong
                          写于 最后由 编辑
                          #15

                          [quote author=Jeff link=topic=16281.msg27647#msg27647 date=1395063648]
                          明知道是两个,可以直接找第二个(或者叫最后一个的)
                          <br / [检测到链接无效,已移除] br />[/quote]

                          谢谢Jeff大神分享,有学了一招。

                          1 条回复 最后回复
                          0

                          • 登录

                          • 没有帐号? 注册

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