Как правильно использовать django UserCreationForm
Я новичок в Django и только начинаю свой первый веб-сайт. Я пытаюсь установить регистрацию для новых пользователей.
я использовал встроенный вид для входа и выхода из системы, но для регистрации нет, в документе говорится, что я должен использовать встроенную форму : UserCreationForm.
код моего представления:
def register(request):
if request.method =='POST':
form = UserCreationForm(request.POST)
if form.is_valid():
user = User.objects.create_user(form.cleaned_data['username'], None, form.cleaned_data['password1'])
user.save()
return render_to_response('QCM/index.html') # Redirect after POST
else:
form = UserCreationForm() # An unbound form
return render_to_response('register.html', {
'form': form,
},context_instance=RequestContext(request))
он работает нормально, но я не удовлетворен, поскольку этот код написан в views.py это обрабатывает ядро моего приложения (множественный выбор вопрос.)
мои вопросы :
- это правильный способ использования UserCreationForm
- где я мог бы поместить этот код, чтобы он был отделен от остальной части мое приложение
Спасибо за ваши ответы.
1 ответов
Django является модульным, поэтому вы можете написать отдельный счета или руководство пользователя приложение, которое может обрабатывать создание пользователей, управление. В этом случае вы ставите код
register
наviews.py
of счета app.вы можете напрямую сохранить
UserCreationForm
который даст вам объект пользователя.
пример:
...
form = UserCreationForm(request.POST)
if form.is_valid():
user = form.save()
...