我试图添加字段' mobil_brigada'现有视图view_operaciones_brigadas_form
,位于名为operaciones
的模块中。
我的Python代码:
class operaciones_mobil(osv.osv):
_name = 'operaciones.mobil'
_inherit = 'operaciones.brigada'
_columns = {
'mobil_brigada': fields.many2one('add.mobil', 'Numero de Mobil', help="Numero de celular asignado a la brigada")
}
我的XML代码:
<openerp>
<data>
<!-- begin -->
<record id="view_operaciones_mobil_form" model="ir.ui.view">
<field name="name">operaciones.mobil.form</field>
<field name="model">operaciones.mobil</field>
<field name="inherit_id" ref="operaciones.view_operaciones_brigadas_form" />
<field name="priority">100</field>
<field name="type">form</field>
<field name="arch" type="xml">
<field name="supervisor" position="after">
<field name="mobil_brigada"/>
</field>
</field>
</record>
<!--/ end -->
</data>
这是我要修改的原始视图:
<record id="view_operaciones_brigadas_form" model="ir.ui.view">
<field name="name">operaciones.brigada.form</field>
<field name="model">operaciones.brigada</field>
<field name="arch" type="xml">
<form string="Employee">
<header>
<field name="state" widget="statusbar" />
</header>
<sheet>
<div class="oe_title">
<label for="ficha" class="oe_edit_only"/>
<h1>
<field name="ficha" />
</h1>
<label for="tipo" class="oe_edit_only"/>
<h1>
<field name="tipo"/>
</h1>
<label for="proyecto" class="oe_edit_only"/>
<h1>
<field name="proyecto"/>
</h1>
</div>
<group>
<group colspan="8">
<field name="tecnico1"/>
<field name="tecnico2"/>
</group>
<group colspan="4">
<field name="supervisor"/>
<!-- it supposed to be here -->
</group>
</group>
</sheet>
</form>
</field>
</record>
但是没有发生任何事情,我在控制台中没有收到错误,我是管理员而且我已经添加到__openerp__.py
XML文件中......我做错了什么?
答案 0 :(得分:2)
如果您只想修改现有表单,则必须从Python模型中删除属性_name
。在你的情况下:
class operaciones_mobil(osv.osv):
_inherit = 'operaciones.brigada'
_columns = {
'mobil_brigada': fields.many2one('add.mobil', 'Numero de Mobil', help='Numero de celular asignado a la brigada')
}
答案 1 :(得分:1)
您正在使用这种继承创建两个表(使用_name
和_inherit
属性)。如果您只想向现有表添加新功能,则应删除_name
属性。如果您想保留两个表格(operaciones.mobil
和operaciones.brigada
),请尝试为模型operaciones.mobil
创建另一个整体表单,因为您无法将表单与不同模型混合。
答案 2 :(得分:0)
在您的代码中编写_name = 'operaciones.mobil'
它意味着你创造新的模型或表
所以你不能像你写的那样继承视图
您需要创建新视图,包括旧视图和新文件,因此您的最终代码可能是
<record id="view_operaciones_mobil_form" model="ir.ui.view">
<field name="name">operaciones.mobil.form</field>
<field name="model">operaciones.mobil</field>
<field name="inherit_id" ref="operaciones.view_operaciones_brigadas_form" />
<field name="priority">100</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Employee">
<header>
<field name="state" widget="statusbar" />
</header>
<sheet>
<div class="oe_title">
<label for="ficha" class="oe_edit_only"/>
<h1>
<field name="ficha" />
</h1>
<label for="tipo" class="oe_edit_only"/>
<h1>
<field name="tipo"/>
</h1>
<label for="proyecto" class="oe_edit_only"/>
<h1>
<field name="proyecto"/>
</h1>
</div>
<group>
<group colspan="8">
<field name="tecnico1"/>
<field name="tecnico2"/>
</group>
<group colspan="4">
<field name="supervisor"/>
<!-- Your New Field -->
<field name="mobil_brigada"/>
</group>
</group>
</sheet>
</form>
</field>
</field>
</record>