2016-10-22 124 views
0

odoo中的上下文是什麼意思?請舉例說明什麼是上下文?爲什麼在odoo中使用?

def change_product_qty(self, cr, uid, ids, context=None): 
    """ Changes the Product Quantity by making a Physical Inventory. """ 
    if context is None: 
     context = {} 

    inventory_obj = self.pool.get('stock.inventory') 
    inventory_line_obj = self.pool.get('stock.inventory.line') 

    for data in self.browse(cr, uid, ids, context=context): 
     if data.new_quantity < 0: 
      raise UserError(_('Quantity cannot be negative.')) 
     ctx = context.copy() 
     ctx['location'] = data.location_id.id 
     ctx['lot_id'] = data.lot_id.id 
     if data.product_id.id and data.lot_id.id: 
      filter = 'none' 
     elif data.product_id.id: 
      filter = 'product' 
     else: 
      filter = 'none' 
     inventory_id = inventory_obj.create(cr, uid, { 
      'name': _('INV: %s') % tools.ustr(data.product_id.name), 
      'filter': filter, 
      'product_id': data.product_id.id, 
      'location_id': data.location_id.id, 
      'lot_id': data.lot_id.id}, context=context) 

     line_data = self._prepare_inventory_line(cr, uid, inventory_id, data, context=context) 

     inventory_line_obj.create(cr, uid, line_data, context=context) 
     inventory_obj.action_done(cr, uid, [inventory_id], context=context) 
    return {} 

回答

0

上下文是字典,包含登錄的用戶ID,語言,時區以及可能添加的任何鍵值對。它意味着在模型和視圖之間傳遞數據的手段。在Android中,它類似於在啓動意圖或活動時傳遞一組數據。

+0

我會用一個例子進行更新。 –

相關問題