OE開発路第一例記録

1894 ワード

クラス定義
class okgj_logistics_car(osv.osv):
    _name = 'okgj.logistics.car'  # 
    _description = 'Logistics Car' # 
    _columns = {   # 
        'name':fields.char(u' ', size=16, required=True),
        'car_code':fields.char(u' ', size=32, required=True),
        'driver':fields.char(u' ', size=16, required=True),
        'driver_phone':fields.char(u' ', size=16, required=True),
        'start_time': fields.date(u' '),
        'active': fields.boolean(u' '),
        'warehouse_id':fields.many2one('stock.warehouse', u' ',),
    }
    
    _defaults = {   #  
        'active': True,
        'start_time': time.strftime('%Y-%m-%d'),
    }

    _order = 'name desc' #  

okgj_logistics_car()  # 

 
 
name_get
 
# openerp get_name() , 
#  ,  。 
#   name_get(self, cr, uid, ids, context=None)
#  ids id ,  list。 

   def name_get(self, cr, uid, ids, context=None):
        if isinstance(ids, (list, tuple)) and not len(ids):
            return []
        if isinstance(ids, (long, int)):
            ids = [ids]
        reads = self.read(cr, uid, ids, ['car_code','driver'], context=context)
        res = []
        for record in reads:
            if record['car_code']:
                newname = record['car_code'] +' / '+ record['driver']
            else:
                newname = record['driver']
            res.append((record['id'], newname))
        return res