如何在Django UsercreationForm中设置初始值

时间:2017-11-17 12:13:14

标签: python django django-forms django-templates django-views

我是Django的初学者,并使用django.contrib.auth.forms中的UserCreationForm开发用户注册页面。但是,无法为password1和password2字段设置初始值。

我的要求是从密码打开用户创建时,重新输入密码字段应填入默认密码。

我尝试过这种方法,但无法达到这个要求。

视图/ user.py

if request.method == "POST":
    form = UserCreationForm(request.POST)
    if form.is_valid():
        user = form.save()

else:
    form = UserCreationForm(initial={'password1':'testing123','password2':'testing123'})

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

预先填充默认密码非常糟糕。但是,这是关于如何实现这一点的一般想法。而且我还建议扩展UserCreationForm并完成其余的工作./

# Create form variable...
form = UserCreationForm(initial={
    'password2': 'password',
    'password1': 'password', 
    'username': 'rajasimon'})

# Assign render_value to True
form.fields['password1'].widget.render_value = True
form.fields['password2'].widget.render_value = True

# Return template with form...
return render(request, 'base.html', {'form': form})