如何解决odoo 8中的ParseError?

时间:2015-11-16 12:36:27

标签: python xml openerp

当我定制res.users树查看其工作正常。

<record model='ir.ui.view' id='transtech_usr'>

        <field name='name'>Base Res users</field>
        <field name="model">res.users</field>
        <field name="inherit_id" ref="base.view_users_tree"/>
        <field name="arch" type="xml">
        <form>

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

            <xpath expr="//tree//field[@name='lang']" position="after">
                <field name='role'/>
                <field name='contact_num' />
                <field name='joining_date' />
            </xpath>
        </form>
        </field>
    </record>  

但问题出现在编辑表单视图时......

ParseError: "ValidateError
Field(s) `arch` failed against a constraint: Invalid view definition

Error details:
Field `sel_groups_7` does not exist

Error context:
View `users form`
[view_id: 320, xml_id: n/a, model: res.users, parent_id: 153]" while parsing /home/surya/Desktop/odoo-8.0/openerp/addons/ctran/view.xml:1497,    near 
        <record model="ir.ui.view" id="transtech_user_form">
        <field name="name">users form</field>
        <field name="model">res.users</field>
        <field name="inherit_id" ref="base.view_users_form"/>
        <field name="arch" type="xml">

              <xpath expr="//field[@name='active']" position="after">
                  <group>
                      <field name="survey_limit"/>
                  </group>    

              </xpath>

            </field>
    </record>

当我想在用户表单中插入一些字段时,我遇到了上述错误。我认为这个形式本身有继承的观点我在错误之上。但我不知道解决它。 Plz帮助我。

谢谢,chandu

3 个答案:

答案 0 :(得分:1)

我没有查看您的代码,但似乎您面临有关Field sel_groups_7 does not exist的追溯。为此,解决方案是您需要在'share' depends中添加__openerp__.py模块。对于您的参考,您可以看到Bootstrap

答案 1 :(得分:0)

您只需要将2 xpath 封装到一个数据标记中:

    <field name='name'>Base Res users</field>
    <field name="model">res.users</field>
    <field name="inherit_id" ref="base.view_users_tree"/>
    <field name="arch" type="xml">
        <data>
            <xpath expr="//field[@name='login_date']" position='attributes'>
                <attribute name='invisible'>1</attribute>
            </xpath>

            <xpath expr="//tree//field[@name='lang']" position="after">
                <field name='role'/>
                <field name='contact_num' />
                <field name='joining_date' />
            </xpath>
        </data>
    </field>
</record>

关于表单视图,我想错误是由 view_users_tree 视图的继承链引起的。 也许你应该检查一下你以前删除了一些模块。 错误字段是一个自动生成的字段,然后不容易找到...尝试grep代码 sel_groups

答案 2 :(得分:-1)

终于得到了一个解决方案,谢谢大家帮助我......

<record model='ir.ui.view' id='transtech_user_form'>
        <field name='name'>users form</field>
        <field name="model">res.users</field>
        <field name="inherit_id" ref="base.view_users_form"/>
        <field name="arch" type="xml">
        <data>
                <field name="active" position="after">
                    <field name='survey_limit'/>
                </field>

        </data>
        </field>
    </record>  

并添加&#39;分享&#39;模块依赖于 openerp .py

由于