Django auth: UserProfile vs. contrib_to_class - PullRequest
4 голосов
/ 01 сентября 2011

Раньше я помещал настраиваемые пользовательские поля в новый класс UserProfile, но теперь я увидел в другом проекте, что можно использовать метод contribute_to_class поля модели, чтобы иметь возможность добавлять новые поля в auth.User модель.

Каковы преимущества и недостатки каждого подхода?

1 Ответ

3 голосов
/ 18 октября 2011

Самое большое, вероятно, то, что contribute_to_class недокументировано, и документы Django очень ясно дают понять, что утвержденная методология использует профили для добавления дополнительных данных к User.Python является очень мощным языком и позволяет вам делать множество «умных» вещей для достижения желаемой цели.Но существует соглашение, которое поможет вам уйти от темной стороны.

Если есть веская, рациональная, необходимая причина использовать contribute_to_class вместо профилей, то, возможно, это будет хорошо,Я не совсем уверен, что такое может быть причина, но, возможно, если бы вы могли доказать какое-то улучшение производительности в этом подходе, который был необходим для приложения, которое должно быть высокопроизводительным.

Скорее, чем нетВпрочем, таких случаев будет немного, если они вообще существуют.За исключением всего прочего, следуйте соглашению .

...