请帮帮我。我有一个模型'res.users'。我希望在我的模型中存在(声明)名称字段。我该怎么办?感谢。
答案 0 :(得分:2)
你的问题并不清楚你想用它做什么,但是如果你想获得模型的名称,那么你应该回答以下答案。
如果你能用输出或更多细节详细说明你的问题,那就太好了。
你应该尝试一下,
model = self.env['ir.model'].search([('model','=','res.users')])
if model:
print model.name
但是,您可以访问该模型的所有字段。 ir.model 中有field_id(one2many)字段。
答案 1 :(得分:1)
据我了解您的问题,我认为您要检查值中是否存在名称字段。 因此,在编写任何方法时,您可以使用一小段代码进行检查。 像:
if 'name' in vals:
"You block of CODE"
答案 2 :(得分:0)
如果我正确理解,您想知道哪个字段被视为名称字段(因为在声明类时可以使用_rec_name对其进行修改)。我认为您只需要根据这段相反的models.py代码检查._rec_name:
# validate rec_name
if cls._rec_name:
assert cls._rec_name in cls._fields, \
"Invalid rec_name %s for model %s" % (cls._rec_name, cls._name)
elif 'name' in cls._fields:
cls._rec_name = 'name'
elif 'x_name' in cls._fields:
cls._rec_name = 'x_name'