问题描述
我有课:
class test(models.Models):
_name = "student"
.....
gender = fields.Selection([
('m','Male'),('f','Female'),('o','Other')
我还有一堂课:
class get_Value(models.Models):
_name = "school"
student_id = fields.Many2one("module.test",string="Student")
gender = fields.Char(string="Gender",related="student_id.gender")
odoo 是假的。
解决方法
您的代码应如下所示:
学生:
class Student(models.Models):
_name = "modulename.student"
gender = fields.Selection([
('m','Male'),('f','Female'),('o','Other')
])
学校:
class School(models.Models):
_name = "modulename.school"
student_id = fields.Many2one("modulename.student",string="Student")
gender = fields.Selection(string="Gender",related="student_id.gender")
- 最好有有意义的类名。 (例如,Student 代表您的学生班级)此外,建议使用您的模块名(例如
modulename.modelname
)来命名您的班级 - 您的 Many2one 关系需要指向另一个类的 _name 字段。
- 您与不同类型的领域相关。
您可以在此处找到更多信息:https://www.odoo.com/documentation/14.0/developer/howtos/backend.html
,您不必为相关字段设置其他类型的字段,应该是相同的,在本例中为 selection
。
gender = fields.Selection(related="student_id.gender")