2017-10-04 5 views
1

内の読み取り、書き込みフィールドを作成します。私はhttps://www.odoo.com/documentation/9.0/howtos/web.htmlがOdooウィジェット

でドキュメントを追った。しかし、私は読み書きフィールドを作成しようとしたとき、私はこのコードはwidgetを認識しないCannot read property 'get' of undefined

<t t-if="! widget.get('effective_readonly')"> 
    <input type="text"></input> 
</t> 

エラーが発生しました。どのようなidentifier私はテンプレート内で使用する必要がありますか? identifierに組み込まれていない場合は、identifierをどこに定義しますか?そしてどうやって?

答えて

0
init機能で

local.FieldNewWidget = instance.web.form.AbstractField.extend({ 
    init: function(parent, options) { 
     this._super(parent, options); 
     this._super.apply(this, arguments); 
     this.set("value", ""); 
     this.widget = this; 
    }, 

... 

そしてここ

を完了
display_field: function() { 
     var self = this; 
     self.$el.empty(); 
     self.$el.append(QWeb.render('yourNewTemplate', {widget: self, data: data})); 

...