2016-12-06 62 views
0

我使用Odoo 10Odoo 10 - 使用Javascript - ListView控件按鈕動作不靈

我添加了一個按鈕,ListView.buttons,但我不能一個動作鏈接到它。

我的按鈕:

<t t-extend="ListView.buttons"> 
    <t t-jquery="button.o_list_button_add" t-operation="after"> 
     <t t-if="widget.fields_view.name == 'site.tree'"> 
      <button type="button" class="btn btn-primary btn-sm oe_create_customer_button"> 
       Create Customer Site 
      </button> 
     </t> 
    </t> 
</t> 

JS代碼:

openerp.broadband = function(instance, local) { 

instance.web.ListView.include({ 
    render_buttons: function() { 
     this._super.apply(this, arguments) 
     if (this.$buttons) { 
      this.$buttons.find('.oe_create_customer_button').on('click', this.proxy('do_new_button')) 
     } 
    }, 
    do_new_button: function() { 
     this.do_action({ 
      type: 'ir.actions.act_window', 
      name: 'site_wizard_act_js', 
      res_model: 'broadband.wizard', 
      view_type: 'form', 
      view_mode: 'form', 
      view_id: 'site_wizard_act', 
      target: 'new', 
     }) 
    } 
}) 
} 

但Odoo給我'類型錯誤:this.view_order [0]未定義'當我點擊按鈕。

有人可以幫助我嗎?

謝謝。

回答

0

[解決]

我添加'語境''視圖'在動作PARAMS。

instance.web.ListView.include({ 
    render_buttons: function() { 
     this._super.apply(this, arguments) 
     if (this.$buttons) { 
      this.$buttons.find('.oe_create_customer_button').on('click', this.proxy('do_new_button')) 
     } 
    }, 
    do_new_button: function() { 
     var context = { 
      'id': this.id, 
     } 
     var action = ({ 
      type: 'ir.actions.act_window', 
      res_model: 'broadband.wizard', 
      view_type: 'form', 
      view_mode: 'form', 
      views: [[false, 'form']], 
      target: 'new', 
      context: context 
     }) 
     this.do_action(action) 
    } 
})