2016-06-17 49 views
3

我有一個模塊已經在我的項目中安裝了一些新表。現在,我想添加與這些表關聯的XML來創建菜單項。Odoo在模塊更新後不添加新的XML文件

在我的OpenERP的.py,我有這個代碼:

'data': ['main.xml', 'security/ir.model.access.csv'] 

現在,我想添加包含我的XML的新文件:

'data': ['main.xml', 
      'trips.xml', 
      'security/ir.model.access.csv'] 

trips.xml看起來是這樣的:

<openerp> 
    <data> 

     <record id="action_partner_trip_form" model="ir.actions.act_window"> 
      <field name="name">Trips</field> 
      <field name="type">ir.actions.act_window</field> 
      <field name="res_model">res.partner.trip</field> 
      <field name="view_type">form</field> 
      <field name="help" type="html"> 
       <p class="oe_view_nocontent_create"> 
       Click to create a new trip. 
       </p> 
      </field> 
     </record> 

     <menuitem action="action_partner_trip_form" name="Trips" sequence="4" parent="base.menu_sales" groups="base.group_no_one"/> 
    </data> 
</openerp> 

我重新啓動服務器,也更新了我的主包,但新的X ML未加載到應用程序中。另外,我的日誌裏面沒有錯誤。

當然,如果我卸載 - >重新安裝它,我的XML將被加載並添加我的菜單項,但我會丟失寶貴的數據。

+0

你總是有問題?在IDE中開發時的一個典型錯誤:在服務器重啓前不保存(需要的文件)。也許你忘記保存清單(__openerp__.py)?另一個問題可能是瀏覽器。只是嘗試重新加載Odoo更新後的空緩存, – CZoellner

+0

只是一個瘋狂的猜測....文件的權限? – danidee

+0

@CZoellner openerp.py已經正確保存。此外,它不是緩存問題,因爲我的菜單項不是在Odoo內部創建的。 (設置 - >用戶界面 - >菜單項) –

回答

3
<menuitem action="action_partner_trip_form" name="Trips" sequence="4" parent="base.menu_sales" groups="base.group_no_one"/> 

不起作用。

我們需要把一個ID這樣的菜單項:

<menuitem id="menu_trips" action="action_partner_trip_form" name="Trips" sequence="4" parent="base.menu_sales" groups="base.group_no_one"/> 
-1

如果您很勇敢,請使用pgAdmin III刪除查看錶單ir_ui_view表。確保你也刪除所有相關表中的數據,例如ir_ui_view。有時OpenERP沒有意識到xml中有更新。通過刪除ir_ui_view中的正確數據,確保必須重新創建視圖,同時希望保留的原始數據仍然存儲在數據庫中。

只要小心,如果事情出錯了,如果你不知道自己在做什麼,它可能會出現可怕的錯誤。

更好的方法是使用OpenERP接口。進入菜單設置 - >技術 - >用戶界面 - >視圖。搜索視圖並刪除模塊的視圖。現在再次更新/升級模塊。

+0

我沒有這個模塊的意見。我只想要菜單項,默認窗體視圖對我的情況是正確的。 –

+0

你可以顯示你在main.xml中做了什麼嗎? –

+0

https://gist.github。com/anonymous/c1931b2cbcd441459ba9f84133f3b1dd 你走了! –