2016-09-26 114 views
1

我想顯示我的Many2one字段。 我從hr_timesheet_sheet.sheet模型這樣的繼承:在繼承視圖中添加many2one字段

class list_activity_sheet(models.Model): 
    _inherit = 'hr_timesheet_sheet.sheet' 
    activity_id = fields.Many2one('list_activity_sheet.activity') 

class List_activity(models.Model): 
    _name='list_activity_sheet.activity' 
    name= fields.Char('Description',required=True) 

而對於瀏覽:

<openerp> 
<data> 
    <record id="List_activity_form" model="ir.ui.view"> 
       <field name="name">hr_timesheet_sheet.sheet.form.inherit</field> 
       <field name="model">hr_timesheet_sheet.sheet</field> 
       <field name="inherit_id" ref="hr_timesheet_sheet.hr_timesheet_sheet_form"/> 
       <field name="arch" type="xml"> 
        <xpath expr="/form/sheet/notebook/page[@string='Details']/field/tree/field[@name='name']" position="after"> 
         <field name="activity_id"></field> 
        </xpath> 

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

當我安裝我的插件,我得到的消息: field activity_id doesn't exist in the view

有誰知道如何解決?

+0

你的python文件是否在'__init __。py'''中導入? – eLBati

+0

是的。因爲當我使用簡單的字段類型如Char,它的作品。 –

回答

1

您正在使用錯誤的模型。如果我正確理解你的視圖定義,你想在表單行上選擇一個活動。您需要繼承hr.analytic.timesheet而不是hr_timesheet_sheet.sheet在Odoo 9+中,您必須繼承account.analytic.line,因爲hr.analytic.timesheet已被踢出。

+0

非常感謝@CZoellner。事實上,我從錯誤的模型繼承 –