2016-09-01 6 views
0

機能フィールドとしてmany2manyフィールドを宣言する必要があります。私は以下のコードを試しましたが、データベースにリレーショナルテーブルを作成しません。many2many odooの関数フィールド8

def _get_function(self,cr,uid,ids,name,args,context=None): 
    resp={} 
    for data in self.browse(cr,uid,ids): 
     print'inside get Function' 
    return resp 

'many2many_ids': fields.function(_get_function, method=True, relation="table.table1", obj='table1_table2_rel', type="many2many" , string="Many2Many") 

データはフォームビューに保存されましたが、別の機能ではその値にアクセスできません。 like、

for data in self.browse(cr,uid,ids): 
     print'many2many_ids',data.many2many_ids 

ここでは値は表示されません。

どうすればいいですか?

答えて

0

フィールドを格納する場合は、「ストア」オプションを使用します。

また、v8で新しいAPIを使用することも考えられます。公式ドキュメントに「計算フィールド」をチェックhttps://www.odoo.com/documentation/8.0/reference/orm.html

+0

私が使用して店=私はエラーを取得して真:「/home/kabeer/git/liveAMS/openerp/models.pyを」ファイル、行2633、_auto_init cr.executeに TypeError: 'NoneType'オブジェクトには属性 '__getitem__'がありません。 '%1!' '%1!' – KbiR

関連する問題