【问题标题】:single Xpath for multiple fields in odoo 8odoo 8中多个字段的单个Xpath
【发布时间】:2017-03-17 07:03:39
【问题描述】:

我需要替换视图中的一些字段、按钮和标签。现在我正在使用下面的 Xpath 来实现它。

 <xpath expr='//field[@name="use_timesheets"]' position="replace">  </xpath>
 <xpath expr='//button[@class="oe_inline oe_stat_button"]' position="replace"></xpath>
 <xpath expr="//field[@name = 'template_id']" position="replace"></xpath> 

是否可以对多个字段使用单个 Xpath,例如:

<xpath expr="//field[@name in ['template_id','name']" position="replace"></xpath> 

有可能吗?

【问题讨论】:

    标签: python-2.7 xpath openerp odoo-8


    【解决方案1】:

    在 XPath 2.0 或更高版本中是可能的:

    //field[@name=('template_id','name')]
    

    在 XPath 1.0 中使用 or 运算符:

    //field[@name='template_id' or @name='name']
    

    我不确定 odoo 支持哪个 XPath 版本。

    【讨论】:

    • 不支持AFAIK v2 :(
    • 是的,lxml 使用支持 XPath 1.0 版。
    • 感谢 har07,第二个解决方案有效。但有一个问题。只有一个字段隐藏,其他字段仍然可见。像 template_id 是隐藏但 name 不是。我需要同时隐藏机器人。
    • 你好,有点晚了,但是用or,它只会取第一个匹配条件的字段
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-03
    • 2019-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多