2012-01-04 6 views
0

У меня есть приложение django, которое имеет одну главную таблицу/модель, которая ссылается на различные таблицы поиска. Так, например: Клиент является основной таблицей, и он ссылается на TitleCode, OccupationCode и т. Д. Через отношения внешних ключей. Таблицы «lookup» все очень похожи по структуре (PK, Code, Display_Value). Очевидным способом сделать это в django является наличие явного класса, полученного из model.Models для каждой таблицы поиска. Это становится немного повторяющимся, и когда у вас есть полустандартные админ-формы для каждой таблицы, тогда это еще более громоздко. Есть идеи? Я думал о создании базового класса, реализующего фактическое определение модели в базе, а затем для получения конкретных таблиц/моделей поиска из этих базовых классов. Я собираюсь проверить, возможно ли это сейчас ...Что такое хороший шаблон для реализации таблиц поиска в Django?

ответ

0

Просто создайте абстрактную модель под названием Код и наследуйте от нее определенные классы (TitleCode, OccupationCode и т. Д.). ModelForms могут использоваться для всех из них, а не для кода.

Другим решением было бы просто создать класс Code и класс CodeType ... поместить все поля там, которые вам могут понадобиться, делая их необязательными, если они есть в некоторых типах, а не в других. Тогда объект Code имел бы FK в CodeType.

+1

Может быть, пример будет приятным :) Я достаточно новый (еще) для django/python, что этот ответ бесполезен без примера. Однако я знаю, как это делается в C# /. Net через EntityFramework. Две парадигмы никак не коррелируют. – IAbstract

Смежные вопросы