私はOdoo v8で作業していますが、問題なく動作しているサーバーアクションを作成しましたが、新しいAPIで多くの操作を行った後、古いAPIでそれを記述しなければならないことを管理するためです。サーバーアクションコードを古いAPIから新しいAPIに移動するにはどうすればよいですか?
これは私のコード、今取り組んでいる古いAPI、1つである:
Pythonの
def open_action_alt_picking_type_views(self, cr, uid, ids, context=None):
res = {
'view_type': 'form',
'view_mode': 'kanban',
'res_model': 'stock.picking.type',
'type': 'ir.actions.act_window',
'target': 'current',
}
return res
XML
<record id="server_action_alt_picking_type_views" model="ir.actions.server">
<field name="name">Picking types</field>
<field name="condition">True</field>
<field name="type">ir.actions.server</field>
<field name="model_id" ref="model_stock_picking_type"/>
<field name="state">code</field>
<field name="code">action = self.open_action_alt_picking_type_views(cr, uid, context.get('active_ids', []), context=context)</field>
</record>
そして、これが1でありますの試みの新しいAPI作業されていない。
Pythonの
@api.model
def open_action_alt_picking_type_views(self):
res = {
'view_type': 'form',
'view_mode': 'kanban',
'res_model': 'stock.picking.type',
'type': 'ir.actions.act_window',
'target': 'current',
}
return res
XML
<record id="server_action_alt_picking_type_views" model="ir.actions.server">
<field name="name">Picking types</field>
<field name="condition">True</field>
<field name="type">ir.actions.server</field>
<field name="model_id" ref="model_stock_picking_type"/>
<field name="state">code</field>
<field name="code">action = self.open_action_alt_picking_type_views()</field>
</record>
ノーデコレータで、@api.multi
で試してみました、XML code
にreturn
前・デ・メソッドの呼び出しを追加フィールドなど
誰もこれを達成する方法を知っていますか?
あなたが何についての具体的でした「手段を動作していません?」 –
これは何もせず、エラーを出すこともありません。サーバーアクションを呼び出すmenuitemをクリックすると、ビューが開かれません。 – forvas