시작하려면 d-r (장고 등록) 전문가가 아니며 질문에 언급했기 때문에 실제로 체크 아웃 한 것입니다. 따라서 다른 사람이 더 좋은 답변을 제출하면 제출하십시오. 어쨌든, 여기 있습니다.
사용자 (또는 d-r이 프로파일이라고 부르는)의 작성 방법이 registration.models.RegistrationManager에있는 create_inactive_user 함수에서 발견되었습니다. 난 당신이 같은 둘 이상의 사용자를 만들 수 있다고 생각하지 않는 한 당신은 아마 get_or_create없이 할 수
default_group = Group.objects.get(name=WHATEVER_THE_GROUP_NAME_IS)
user_group, is_created = UserGroup.get_or_create(user=new_user)
user_group.group = default_group
#user_group.groups.add(default_group) # Django ver. 1.7+
user_group.save()
: 그래서,이 기능에 후 : 당신은 뭔가를 추가 할 수
new_user.is_active = False
new_user.save()
사용자 이름,하지만 오히려 미안한 것보다 안전 할 것입니다.
이 방법을 사용하면 특정 항목 (예 : 기본 그룹 이름)을 하드 코딩 할 때 d-r 파일 (가장 좋은 방법은 아닐 수도 있음)을 편집 할 수 있지만 좋은 단계가되어야합니다.
추신. 기본 그룹 이름은 settings.py 파일에있는 변수 일 수 있습니다.이 변수를 사용하면 더욱 쉽게 액세스 할 수 있습니다. 예 :
settings.py:
DEFAULT_GROUP_NAME = 'YOUR GROUP NAME'
registration/models.py:
default_group = Group.objects.get(name=settings.DEFAULT_GROUP_NAME)
어쨌든 희망이 있습니다.
또한 실제 사용 권한 테이블 (또는 사용자 자신)을 사용하지 않고 사용자와 관리자 만 구별해야하는 경우 사용자 모델의 is_staff 및 is_superuser 필드를 사용할 수도 있습니다. –
그건 정말 좋은 답변이지만, Dr 코드에서 아무 것도 바꾸고 싶지 않기 때문에 다른 답장을 기다릴 것입니다 (내 프로젝트 외부입니다). –
@TiuTalk 프로젝트 외부에있는 것이 사실이지만, virtualenv를 사용하여 단일 프로젝트가 너무 많은 문제가되어서는 안됩니다. 필자는 주어진 장고 프로젝트에 로컬 인 ENV/lib/python2.7/site-packages/registration 파일을 변경했습니다. – Tom