나는 UserProfile을 만들고 AUTH_PROFILE_MODULE로 정의하여 django.contrib.auth.models에서 표준 사용자 모델을 사용자 정의한 응용 프로그램을 리팩터링했습니다.사용자 정의 사용자 모델을 사용자 UserProfile에 리 팩터링 : 사용자 정의 UserManager를 작성하거나 user.get_profile()을 수십 번 추가해야합니까?
문제는 UserProfile의 속성이 프로젝트 전체에서 사용자가 보는 것을 결정하는 데 사용된다는 것입니다.
내가 테스트를 작성하고 반복적으로 문이 유형에 넣어했다 :
user = User.objects.get(pk=1)
user_profile = user.get_profile()
if user_profile.karma > 10:
do_some_stuff()
이 지루한 내가이 DRY 원칙을 위반하고있어 경우 지금 궁금하네요.
사용자 요청시 UserProfile 데이터를 자동으로로드하는 사용자 정의 UserManager를 만드는 것이 더 합리적일까요?
UserProfile 속성을 반복하여 User 모델에 추가 할 수도 있습니다. 이렇게하면 코드를 낭비하는 사용자 지정 모델 특성에 대한 모든 참조를 업데이트하지 않아도됩니다.
물론 User 및 UserProfile 모델을 올바르게 업데이트 할 수 있도록 처리해야합니다.
장고 - esque 더 접근 방식은?