我有两个对象(不包括不相关的字段):
class Item(models.Model):
id = models.BigAutoField(primary_key=True)
group_id = models.IntegerField(blank=True, null=True)
class Observation(models.Model):
item_id = models.IntegerField(blank=True, null=True)
group_id = models.IntegerField(blank=True, null=True)
加入它们基于观察的项目id或组id:
SELECT o.*
FROM observations o
JOIN items i ON (i.id = o.item_id OR i.group_id = o.group_id)
...
这种类型的多对多关系可以在模型中描述吗?还是需要编写自定义字段?