моделирование пользовательских настроек в django - PullRequest
8 голосов
/ 27 апреля 2011

Я хотел бы иметь дополнительные настройки, привязанные к каждому пользователю в моем приложении (за, is_staff, is_admin и т. Д. И т. Д.). По сути, мне бы хотелось иметь различные настройки для настройки их взаимодействия с пользователем (т.е. не показывать всплывающие подсказки, сколько строк отображать в таблицах результатов, другие флаги для включения или выключения).

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

Поэтому, когда кто-то успешно входит в систему, я беру настройки пользователя и добавляю их в сеанс.

Я не был уверен, есть ли симпатичный способ или лучшая практика для этого.

Ответы [ 2 ]

4 голосов
/ 27 апреля 2011

Как уже было сказано, используйте UserProfile .Для хранения множества флагов в одном поле есть django-bitfield .

0 голосов
/ 27 апреля 2011

Либо поместите их в модель профиля пользователя, либо создайте другую модель с отношением один к одному до User.

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