Django:通过具有(仅)复合键的表的多对多

Tik*_*itu 6 django many-to-many django-models

我有一个遗留数据库,其中一个表存储多对多关系,但没有一个主键列.有没有办法说服Django使用它呢?

示意图:

Product 1<---->* Labeling *<---->1 Label
Run Code Online (Sandbox Code Playgroud)

Labeling(product_id,label_id)用作复合主键,我没有看到任何方式通知Django这个.(只是使用through给我Unknown column 'labeling.id' in 'field list'.)

我是否需要回退到自定义SQL?或者我错过了什么?

Tik*_*itu 1

如果您将 a 添加unique_together到多对多表的模型中,Django 将使用这些列,而不是期望名为 的主键id