我有一个数据库表:
url_id( INT(11) ) | monitor_id( (INT(11) )
--------------------+--------------------------
1 | 1
1 | 2
1 | 3
2 | 2
等等。 url_id
和monitor_id
字段都不是唯一的,更重要的是,它们是其他表的外键(表urls
和表monitors
)。所以我不能改变数据库结构。在我的Django模型文件中,我为此表创建了一个模型类:
class MonitorForUrl(models.Model):
url = models.ForeignKey(Url, primary_key=True)
monitor = models.ForeignKey(Monitor)
class Meta:
db_table = 'monitors_for_url'
我将primary_key
参数设置为true,因为如果我没有设置自己的主键字段,Django会为主键创建默认的*model_name*_id
字段。 DB中没有这样的字段,因此我将primary_key
设置为true。通过这种方式,我无法创建一些具有类似url_id
值的行,因为它是主键。我可以告诉Django在没有设置primary_key
选项的情况下不创建默认主键字段,或者您可以建议我一些其他方法来解决我的问题吗?