Django - Обработка «перечисленных моделей»

Есть ли какая-нибудь передовая практика по обработке «таблиц поддержки» в Django?

Мне не нравится Field.choices, так как он на самом деле не обеспечивает целостность (он даже не создает проверочных ограничений), поэтому я предпочитаю создавать полномасштабную модель (и часто я обнаруживаю, что добавление дополнительных полей в таблицу поддержки).

Теперь, если я использую полную модель, я полагаю, что правильный путь — создать фикстуру исходных данных для содержимого таблицы, но существует ли «правильный способ» иметь именованные экземпляры строки, скажем...

class State(models.Model):
    name = model.TextField()

STATES = dict(
    NEW=State.objects.get(pk=0),
    IN_PROGRESS=State.objects.get(pk=1),
)

... или что-то в этом роде.

Чем вы пользуетесь?

12
задан alex 9 March 2012 в 10:40
поделиться