我是odoo開發的新手。我必須為繼承的模型創建新的 xml 檔案,還需要添加一些額外的欄位。
我該怎么做?請任何人幫助我
我嘗試了下面的程式,但我沒有得到繼承模型,只創建新模型。在 xml 模型名稱中添加模型名稱 stock.picking 時,我得到了繼承模型,但我的新欄位不存在。真的,我不知道如何正是這樣做。
.py 檔案是
class LoadingChart(models.Model):
_inherit = 'stock.picking'
_name = 'loading.chart'
_description = "Loading Chart"
nf_date = fields.Date(string="Loading Date")
nf_date1 = fields.Datetime(string="Date")
nf_reference = fields.Char(string="Reference")
nf_seq = fields.Char(string='Loading Sequence', required=True, copy=False, readonly=True,
index=True, default=lambda self: _('New'))
.xml 檔案是
<?xml version='1.0' encoding='utf-8'?>
<odoo>
<record model="ir.ui.view" id="nf_unloading_view">
<field name="name">Loading.chart.tree</field>
<field name="model">loading.chart</field>
<field name="arch" type="xml">
<tree>
<field name="nf_date"/>
<field name="nf_date1"/>
</tree>
</field>
</record>
<record id="stock_picking_form" model="ir.ui.view">
<field name="name">stock.picking.form</field>
<field name="model">loading.chart</field>
<field name="arch" type="xml">
<form>
<sheet>
<div class='oe_title'>
<h1>
<field name="nf_seq" readonly="1"/>
</h1>
</div>
<group>
<group>
<field name="nf_date"/>
<field name="nf_date1"/>
</group>
<group>
<field name=" nf_reference"/>
</group>
</group>
<record model="ir.actions.act_window" id="loading_chart_action_window">
<field name="name">loading Chart</field>
<field name="res_model">loading.chart</field>
<field name="view_mode">tree,form</field>
</record>
<!--*************************MENU*****************************************************-->
<menuitem id="loading_chart_root_menu" name="Loading Chart"
parent="stock.menu_stock_warehouse_mgmt" action="loading_chart_action_window" sequence="20"/>
uj5u.com熱心網友回復:
_inherit和_name屬性相同,Odoo 將創建一個新的model,查看經典繼承檔案了解更多詳細資訊:
當
_inherit和_name屬性一起使用時,Odoo 使用現有模型(通過 提供_inherit)作為基礎創建一個新模型。新模型從其基礎中獲取所有欄位、方法和元資訊(默認值和 al)。
要就地擴展 stock.picking(添加功能),請不要提供_name然后繼承選股視圖以添加新欄位。
例子
stock.picking就地繼承:
class StockPicking(models.Model):
_inherit = 'stock.picking'
nf_date = fields.Date(string="Loading Date")
擴展stock.picking樹視圖:
<record id="stock_picking_tree" model="ir.ui.view">
<field name="name">stock.picking.tree</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.vpicktree"/>
<field name="arch" type="xml">
<field name="scheduled_date" position="after">
<field name="nf_date"/>
</field>
</field>
</record>
擴展stock.picking表單視圖:
<record id="stock_picking_form" model="ir.ui.view">
<field name="name">stock.picking.form</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.view_picking_form"/>
<field name="arch" type="xml">
<field name="date_deadline" position="after">
<field name="nf_date"/>
</field>
</field>
</record>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/314634.html
