openerp
2013-04-21 57 views 0 likes 
0

我需要在我的項目模塊中使用任務功能(我已經繼承了「project.project」)。 我繼承「project.task」是這樣的:我不能在繼承視圖後替換字段

class task(osv.osv): 
    _name = "project.task" 
    _description = "Task" 
    _date_name = "date_start" 
    _inherit = 'project.task' 
    _columns={ 
      'my_project_id': fields.many2one('project.my.project', 'Project'), 
      } 

    task() 

現在我需要從任務創建「my_project_id」的形式代替PROJECT_ID領域。我這樣做:

<record id="view_task_form2_inherited" model="ir.ui.view"> 
     <field name="name">project.task.form</field> 
     <field name="model">project.task</field> 
     <field name="inherit_id" ref="project.view_task_form2"/> 
     <field eval="2" name="priority"/> 
     <field name="arch" type="xml"> 
      <field name="project_id" position="replace"> 
       <field name="my_project_id"/> 
      </field> 

    </field> 
</record> 

它給了我這個錯誤:未捕獲錯誤:NameError:名稱'project_id'未定義。

請注意,如果我使用position =「before」或「after」,則會正確添加「my_project_id」字段(位於「project_id」字段之前/之後)。

回答

2

嘗試它使用XPath

<xpath expr="//field[@name='project_id']" position="replace"> 

可能會工作。

0

檢查更換

使用的xpath之前源模型視圖取代

在EXPR使用其中場以XML定義準確路徑。

相關問題