SQLAlchemy ForeignKey отношение через промежуточную таблицу - PullRequest
0 голосов
/ 10 февраля 2010

Предположим, у меня есть таблица Articles, которая имеет поля article_id, content и содержит одну статью с идентификатором 1.

У меня также есть таблица Categories, которая имеет поля category_id (первичный ключ), category_name и содержит одну категорию с идентификатором 10.

Теперь предположим, что у меня есть таблица ArticleProperties, которая добавляет свойства к Articles. В этой таблице есть поля article_id, property_name, property_value.

Предположим, что я хочу создать отображение из Categories в Articles через ArticleProperties таблицу.

Я делаю это, вставляя следующие значения в таблицу ArticleProperties: (article_id = 1, property_name = "category", property_value = 10).

Есть ли способ в SQLAlchemy, чтобы выразить, что строки в таблице ArticleProperties с property_name "category" на самом деле являются ЗАРУБЕЖНЫМИ КЛЮЧАМИ таблицы Articles для таблицы Categories?

Это сложная проблема, и я сам не нашел ответа.

Любая помощь приветствуется!

Спасибо, Бода Цидо.

1 Ответ

1 голос
/ 12 февраля 2010

Если я правильно понимаю ваш вопрос, то Нет, вы не можете смоделировать эти отношения, как вы предлагали. (Было бы полезно, если бы вы описали желаемый результат, а не предполагаемое решение)

Я думаю, что вам может понадобиться таблица сопоставления «многие ко многим» под названием ArticleCategories, состоящая из 2 столбцов int, ArticleID и CategoryID (с соответствующими FK)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...