如何在python xml中调用方法?

时间:2015-05-22 10:23:10

标签: python xml odoo

我有一个返回值X的方法python,我希望得到一个xml文件,它代表odoo中的树视图。如何在xml文件中调用此方法来显示该值?

2 个答案:

答案 0 :(得分:0)

XML是声明性语言,因此您无法“调用”XML文件中的任何函数。您可以在生成XML阶段(例如,如果您在运行中构建它)手动在特定的XML文档位置插入python函数的结果。

如果你的磁盘上有带XML文档的静态文件,你可以在XML中插入一个魔术占位符,并在读取XML文件内容后用python函数结果替换它。

的test.xml:

<root>
  <things>
    <thing>
      <title>[%company_name%] Some title</title>
    </thing>
  </things>
</root>

xml_reader.py

my_company_name = 'Example LTD.'
with open('test.xml', 'r') as fp:
    content = fp.read()
    content = content.replace('%company_name%', my_company_name)
    print(content)

答案 1 :(得分:0)

看看我的方法python def affiche(): return result[0].name

我想在以下代码中描述的视图xml odoo中显示此结果:

 <record model="ir.ui.view" id="document_tree_view">
     <field name="name">document.tree.view</field>
     <field name="model">document_binov.document_binov</field>
     <field name="type">tree</field>
     <field name="arch" type="xml">
      <tree string="Documents">
           <field name="titre"/>
           <field name="description"/>
           <field name="type" />
      </tree>
     </field>
    </record>