簡體   English   中英

在 javascript Odoo 10 中獲取 active_id

[英]Get active_id in javascript Odoo 10

您好,我正在嘗試將我的 active_id 從 res.partner 傳遞給 JS。 但沒有運氣。 我嘗試使用數據集 active_id 但它始終未定義。 我在文檔中找不到任何解決方案。 這是我的 JS 文件:

odoo.define('melax_category.my_dialog_partner', function(require){"user strict";
  var core = require('web.core');
  var session = require('web.session');
  var qweb = core.qweb;
  var mixins = core.mixins;
//   var Widget = require('web.Widget');
  var Model = require('web.Model');
  var Dialog = require('web.Dialog');
  var model_category = new Model('res.partner');
//   var dataset = this.dataset;
//   var active_id = dataset.ids[dataset.index];

function ActionBuildTreeBuyerPartner(parent, action){
    console.log(this.id)
    var dialog = new Dialog(document.body, {
                    title: "Categories Web Acheteur",
                    subtitle: '<input id="search-tree-buyer" type="text">',
                    size: 'big',
                    $content: '\
                               <div id="tree-buyer-container"></div>\
                               ',
                });

    TREE = $('#tree-buyer-container')
    dialog.open();
    DESTROY_TREE($('#tree-buyer-container'))
    BUILD_TREE_PARTNER_MODE(model_category, $('#tree-buyer-container'))

}

function ActionBuildTreeSellerPartner(parent, action){
    var dialog = new Dialog(document.body, {
                    title: "Categories Web Vendeur",
                    // subtitle: "Tree Builder Partner Sub Title!",
                    size: 'big',
                    $content: '<div id="tree-seller-container"></div>',
                });

    TREE = $('#tree-seller-container')
    dialog.open();
    // DESTROY_TREE($('#tree-seller-container'))
    // BUILD_TREE_PARTNER_MODE(model_category, $('#tree-buyer-container'))

}
    core.action_registry.add("build_tree_buyer_partner", ActionBuildTreeBuyerPartner);
    core.action_registry.add("build_tree_seller_partner", ActionBuildTreeSellerPartner);
});

這是我的 python 文件,例如我正在嘗試傳遞我的 active_id(self.id):

@api.multi
def build_tree_buyer_partner(self):
    _logger.error(self)
    # My active Id
    _logger.error(self.id)       
    return {
        'type':'ir.actions.client',
        'tag': 'build_tree_buyer_partner'
    }

是的,您可以使用以下方法獲取當前 ID:

var dataset = this.dataset;
var active_id = dataset.ids[dataset.index];

Python

@api.model 
def _get_active_id(self):
    return self._context.get('active_id')

deploy_config_id = fields.Many2one('res.partner', string='Customer', required=True, default=_get_active_id)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM