我有以下代码我想要这两个字段asset_catg_id和folio_num。这些应该可用于许多两个字段。如何为单个类编写2 _rec_name?
class asset_asset(osv.osv):
_inherit = "asset.asset"
#_name = "asset_asset"
_rec_name= "folio_num"
#_rec_name = "assetmodelid_add"
_columns = {
'name': fields.char('Asset Name', size=64),
'company_id1': fields.many2one('res.company', 'Substation', required=True),
#'place1': fields.many2one('asset.parentlocation', 'Location'),
'asset_catg_id' : fields.many2one('asset.catg', 'Asset Catg Selection',select=True, required=True),
'area_id' : fields.many2one('asset.name', 'Asset Name Selection', domain="[('asset_catg_id', '=', asset_catg_id)]", select=True, required=True),
'assetmodelid_add' : fields.many2one('agile.portfolio1','Asset Model Code',domain="[('area_id', '=', area_id)]",),
'folio_num' : fields.char('Folio No',),
'asse_line':fields.one2many('asset.line','emp_id','Name Plate'),
'asse_line2':fields.one2many('asset.part','emp_id1','Parts'),
#'assed_modelid':fields.many2one('agile.portfolio1','Asset Model ID',select=True, required=True),
'quantity': fields.char('Quantity',size=64),
'uom': fields.char('Uinit of Measure',size=64),
'model_no' : fields.char('Model', size=64),
#'asset_id':fields.many2one('agile.portfolio','Asset ID'),
}
答案 0 :(得分:0)
在这种情况下,我们将覆盖name_get()方法模块
def name_get(self, cr, uid, ids, context={}):
if not len(ids):
return []
res=[]
for assest in self.browse(cr, uid, ids,context=context):
res.append((assest.id, assest.asset_catg_id + ', ' + assest.folio_num))
return res
答案 1 :(得分:0)
如果你想在asset.asset ok中将资产类别名称显示为_rec_name 因此请创建以下文件:
'folio_num': fields.related('asset_catg_id', 'name', type="char", string="Folio Name"),
如果你想要显示名称,那么创建计算机文件就是'batter
答案 2 :(得分:0)
默认情况下,many2one字段显示名称字段或_rec_name中定义的字段。如果要显示其他字段的值,则需要覆盖对象中的name_get方法。
例如,我想在many2one字段中显示两个字段(name,name2):
def name_get(self, cr, uid, ids, context=None):
if not len(ids):
return []
res = [(r['id'], r['name'] and '%s [%s]' % (r['name'], r['name2']) or r['name'] ) for r in self.read(cr, uid, ids, ['name', 'name2'], context=context) ]
return res
您可以参考:ORM Method: name_get.