我需要设置一对一的关系,这也必须是通用的。也许你可以建议我一个更好的设计。到目前为止,我提出了以下模型
class Event(models.Model):
# skip event related fields...
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
class Meta:
unique_together = ('content_type', 'object_id')
class Action1(models.Model):
# skip action1 related fields...
events = generic.GenericRelation(Event, content_type_field='content_type', object_id_field='object_id')
@property
def event(self):
return self.events.get() # <<<<<< Is this reasonable?
class Action2(models.Model):...在Django Admin In event list中,我希望收集所有操作,并从那里转到操作的管理页面。是否可以避免在操作模型中创建event属性?有没有更好的解决方案?将字段events和属性event组合在一个定义中会很好。我正在处理的项目使用Django 1.1
https://stackoverflow.com/questions/7837330
复制相似问题