Odoo V10 如何访问记录规则中的不同模型?
How to access different models in record rules in Odoo V10?
我想访问 op.student
中的 op.faculty
模型,我正在为其创建记录规则。
[('x_school_id', '=', user.x_school_id)]
faculty
模型的目的 - 他们(教师用户)只能看到指定的学生。
通过记录规则,我们想把师生模型匹配在一起。
您在记录规则上使用的当前模型 "access another model" 的唯一方法是通过 fields
属性。
向 op.student
模型添加关系字段以提取 op.faculty
所需的任何数据。我不确定你的确切情况,但你应该能够 link 一起模型,但是你需要如下:
from odoo import fields, models
class Faculty(models.Model):
_name = 'op.faculty'
school_id = fields.Many2one('op.school')
school_student_ids = fields.One2many(related='school_id.student_ids')
my_student_ids = fields.One2many('op.student', 'mentor_id')
class Student(models.Model):
_name = 'op.student'
school_id = fields.Many2one('op.school')
school_faculty = fields.One2many(related='school_id.faculty_ids')
mentor_id = fields.Many2one('op.faculty')
class School(models.Model):
_name = 'op.school'
faculty_ids = fields.One2many('op.faculty', 'school_id')
student_ids = fields.One2many('op.student', 'school_id')
我想访问 op.student
中的 op.faculty
模型,我正在为其创建记录规则。
[('x_school_id', '=', user.x_school_id)]
faculty
模型的目的 - 他们(教师用户)只能看到指定的学生。
通过记录规则,我们想把师生模型匹配在一起。
您在记录规则上使用的当前模型 "access another model" 的唯一方法是通过 fields
属性。
向 op.student
模型添加关系字段以提取 op.faculty
所需的任何数据。我不确定你的确切情况,但你应该能够 link 一起模型,但是你需要如下:
from odoo import fields, models
class Faculty(models.Model):
_name = 'op.faculty'
school_id = fields.Many2one('op.school')
school_student_ids = fields.One2many(related='school_id.student_ids')
my_student_ids = fields.One2many('op.student', 'mentor_id')
class Student(models.Model):
_name = 'op.student'
school_id = fields.Many2one('op.school')
school_faculty = fields.One2many(related='school_id.faculty_ids')
mentor_id = fields.Many2one('op.faculty')
class School(models.Model):
_name = 'op.school'
faculty_ids = fields.One2many('op.faculty', 'school_id')
student_ids = fields.One2many('op.student', 'school_id')