所以......假设我有上课" person"和"颜色"。如果一个人如何做到这一点 颜色分配给某人......不能分配给其他人
class person(osv.Model):
_name = 'person'
_columns = {
'name': fields.char('Person', size=50, help="Persona"),
'color_p : fields.one2one('colors','Color'),
}
person()
class colors(osv.Model):
_name = 'colors'
_columns = {
'name': fields.char('Color', size=50, help="Color"),
}
colors()
答案 0 :(得分:0)
对于OpenERP 7,您可以尝试使用_inherits
(例如参见http://dirtyhandsphp.blogspot.in/2014/10/openerp-one2one-relational-field-example.html)。
但是,我过去需要建立一个单一的关系,而这个解决方案并不像我预期的那样成功。可能你觉得不一样;)
答案 1 :(得分:0)
如果您有2个模型,并且想要创建一个one2one关系:
type Sorter[Item] = (Item, Item) => Boolean
def customSorter(map: Map[String, Int]): Sorter[String] = { (s1, s2) =>
(map.get(s1), map.get(s2)) match {
case (Some(i1), Some(i2)) => i1 < i2
case _ => s1 < s2
}
}
这将使魔术成真!现在,您可以在service_example模型中使用one2one关系中的任何字段:
class ServiceLine(models.Model):
_name = "service.line"
title = fields.Char(string='Title')
service_cost = fields.Float(string='Cost', track_visibility='onchange')
class ServiceExample(models.Model):
_name = "service.example"
_description = "My Awesome Singular Service Example"
_inherits = {
'service.line': 'service_line_id',
}
service_line_id = fields.Many2one(
'service.line', string='Service Line ID', required=True, ondelete='cascade', unique=True, auto_join=True
)
service_example_details = fields.Char(string='Details', track_visibility='onchange')