OpenERP模块xml ValidateE

2024-04-19 16:05:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习openerpdevelopment,我遇到了一个问题,我认为这个问题应该很明显。在

我做了一个非常简单的模块,但我不能安装它。它一直在说

ValidateError Error occurred while validating the field(s) arch: Invalid XML for View Architecture!

这是我的模块:

初始化.py

import testmod
__openerp__.py

{
'name': "Test Module",
'description': "Basic example of a (future) web module",
'category': 'Hidden',
'depends': ['base'],
'data': [
    'test_view.xml',
],
'installable': True,
'application': False,
'auto_install': False,
}

在测试模块在

^{pr2}$

试验_视图.xml在

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>

<record id="testmod_test_form" model="ir.ui.view">
    <field name="name">testmod.test.form</field>
    <field name="model">testmod.test</field>
    <field name="arch" type="xml">
      <form string="Test" version="7.0">  
        <field name="test1" />
        <field name="test2"/>

      </form>
    </field>
</record>

<record id="testmod_test_tree" model="ir.ui.view">
  <field name="name">testmod.test.tree</field>
  <field name="model">testmod.test</field>
  <field name="arch" type="xml">
    <tree string="Test">
      <field name="test1" />
       <field name="test2"/>
    </tree>
  </field>
</record>

<record model="ir.actions.act_window" id="action_testmod_test">
  <field name="name">Test</field>
  <field name="res_model">testmod.test</field>
  <field name="view_type">form</field>
  <field name="view_mode">tree,form</field>
</record>

<menuitem 
          name="Test" 
          id="menu_testmod_test" 

          />

<menuitem 
          name="Test sub" 
          parent="menu_testmod_test"
          id="menu_testmod_test_sub" 
          />
<menuitem
        name="Sub Test"
        id="menu_subtest"
        parent="menu_testmod_test_sub"
        action="action_testmod_test"    
        />


</data>
</openerp> 

以下是完整日志错误:

2013-09-17 19:22:19,199 1674 INFO emad92 openerp.modules.loading: loading 1 modules... 2013-09-17 19:22:19,220 1674 INFO emad92 openerp.modules.loading: loading 10 modules... 2013-09-17 19:22:19,251 1674 INFO emad92 openerp.modules.loading: loading 11 modules... 2013-09-17 19:22:19,252 1674 INFO emad92 openerp.modules.module: module testmod: creating or updating database tables 2013-09-17 19:22:19,255 1674 INFO emad92 openerp.modules.loading: module testmod: loading test_view.xml 2013-09-17 19:22:19,269 1674 ERROR emad92 openerp.addons.base.ir.ir_ui_view: Can't render view for model: testmod.test Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/openerp/addons/base/ir/ir_ui_view.py", line 126, in _check_render_view fvg = self.pool.get(view.model).fields_view_get(cr, uid, view_id=view.id, view_type=view.type, context=context) AttributeError: 'NoneType' object has no attribute 'fields_view_get' 2013-09-17 19:22:19,276 1674 ERROR emad92 openerp.tools.convert: Parse error in /opt/modules-openerp/testmod/test_view.xml:5:

<record id="testmod_test_form" model="ir.ui.view">
    <field name="name">testmod.test.form</field>
    <field name="model">testmod.test</field>
    <field name="arch" type="xml">
      <form string="Test" version="7.0">  
        <field name="test1" />
        <field name="test2"/>

      </form>
    </field>
</record> 

回溯(最近调用最后一次):文件

"/usr/lib/pymodules/python2.7/openerp/tools/convert.py", line 847, in parse self._tags[rec.tag](self.cr, rec, n) File "/usr/lib/pymodules/python2.7/openerp/tools/convert.py", line 814, in _tag_record id = self.pool.get('ir.model.data')._update(cr, self.uid, rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode, context=rec_context ) File "/usr/lib/pymodules/python2.7/openerp/addons/base/ir/ir_model.py", line 964, in _update res_id = model_obj.create(cr, uid, values, context=context) File "/usr/lib/pymodules/python2.7/openerp/addons/base/ir/ir_ui_view.py", line 103, in create return super(view, self).create(cr, uid, values, context) File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 4472, in create self._validate(cr, user, [id_new], context) File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 1546, in _validate raise except_orm('ValidateError', '\n'.join(error_msgs)) except_orm: ('ValidateError', u'Error occurred while validating the field(s) arch: Invalid XML for View Architecture!') 2013-09-17 19:22:19,278 1674 ERROR emad92 openerp.netsvc: ValidateError Error occurred while validating the field(s) arch: Invalid XML for View Architecture! Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/openerp/netsvc.py", line 292, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, *params) File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, **kw or {}) File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 144, in wrapper raise except_osv(inst.name, inst.value) except_osv: ('ValidateError', u'Error occurred while validating the field(s) arch: Invalid XML for View Architecture!') 2013-09-17 19:22:19,283 1674 INFO emad92 werkzeug: 127.0.0.1 - - [17/Sep/2013 19:22:19] "POST /web/dataset/call_button HTTP/1.1" 200 -

我在linux平台上使用openerp7.0(ubuntu13.04)。在


Tags: nameinpytestselfviewidfield
2条回答

安装并重新启用数据部分并升级模块后,请尝试在openerp.py中注释掉数据部分。 有时openerp无法实际创建模型并导致错误。 这也许能解决你的问题

我已经创建了一个模块与上述文件内容和它的安装没有任何问题。请检查您的文件名和模块结构是否正确。在

相关问题 更多 >