我正在将现有的数据库结构映射到 Django 模型中。我有一个多对多结构,其中关联表是自然键控的:
CREATE TABLE foo (id INTEGER PRIMARY KEY);
CREATE TABLE bar (id INTEGER PRIMARY KEY);
CREATE TABLE foo2bar (foo_id INTEGER REFERENCES foo(id),
bar_id INTEGER REFERENCES bar(id),
PRIMARY KEY (foo_id, bar_id)
);
有没有办法让 Django 的 ORM 映射这个?我必须更改 foo2bar 以使用代理键吗?例如
CREATE TABLE foo2bar (id INTEGER PRIMARY KEY,
foo_id INTEGER REFERENCES foo(id),
bar_id INTEGER REFERENCES bar(id)
);
CREATE UNIQUE INDEX ix_foo2bar_uniq ON foo2bar (foo_id, bar_id);