1
有没有办法从父模型类对象访问子模型类对象,或者现在父类模型类对象具有哪个子模型类?从Odoo8中的父模型类对象访问子模型类
这里是我的模型类:
class Content(models.Model):
_name = 'content'
title = fields.Char(string='Title', required=False)
summary = fields.Char(string='Summary', required=False)
description = fields.Char(string='Description', required=False)
class Video(models.Model):
_name = 'video'
_inherits = {'content': 'content_id'}
duration = fields.Float(string='Duration', required=False)
class Image(models.Model):
_name = 'image'
_inherits = {'content': 'content_id'}
width = fields.Float(string='Width', required=False)
height = fields.Float(string='Height', required=False)
如果我有“内容”类的一个对象说“内容1”有子对象“图像1”,在那里访问的方式“图像1”对象来自“content1”对象还是现在该类型的“content1”是“Image”?
内容将来可能有很多子类,所以我不想查询所有的子类。
其实我想要避免的是每次创建一个新的子类时修改父类,即在父类中添加“_ids = fields.One2many()”字段。如果我不能从父类的对象访问子类的对象,只需要知道这个父对象属于哪个子类就足够了,这样我就不必查询所有的子类而只需要查询一个子类。所以我正在寻找一种解决方案,比如我在父类中添加了一个类似“child_table”的字段,并且每个子类都使用其“_name”属性填充此父字段。用这种方式,我觉得它会容易得多。 – 2015-04-03 07:49:21
以适当的方式维护关系总是明智的,因此您将获得oops允许的所有自由。 – 2015-04-03 09:39:12