Я сопоставляю существующую структуру базы данных с моделями 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)
);
Нет ли способа заставить 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);