我有一个Training
modell和一个Drill
模型,它们之间有一个ManyToMany关系。我遇到的问题是Django在默认情况下强制唯一性,并且不可能在相同的Training
上有重复的Drill。Django Rest Framework与ManyToMany字段一起使用
为了解决这个问题,我可以在设置ManyToMany关系时使用through=
参数,但这会导致Django Rest Framework出现很多问题。
有没有其他方法可以做到这一点?我是否必须创建through=
模型才不强制实现我的M2M关系的唯一性?
我与DRF所遇到的问题是,我还需要为已创建的新模型创建中间串行器。当我想发送Drill
数据时,这会导致问题,因为它会验证它并删除所有Drill
数据,因为由于需要自定义序列化程序,因此它期待TrainingDrill
(中间模型)。
这个小小的变化真的很快就需要大量额外的变化。一定会有更好的办法。