我正在为我的django(2.0版)网站做一个注册页面,但它对我来说相当混乱,我很确定要点和附加信息不应该马上出现。你知道吗
如何使注册页面看起来更干净?也就是说,只有用户名,密码和确认文本框,而不是所有的消息。你知道吗
谢谢!你知道吗
你知道吗注册.html你知道吗
<h2>Sign up</h2>
<br>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Sign up</button>
</form>
注册视图
def register(request):
if request.method == 'POST':
form = UserCreationForm(request.POST)
if form.is_valid():
form.save()
username = form.cleaned_data.get('username')
raw_password = form.cleaned_data.get('password1')
user = authenticate(username=username, password=raw_password)
login(request, user)
return redirect('index')
else:
form = UserCreationForm()
return render(request, 'todo/register.html', {'form': form})
有很多方法可以实现这一点。你知道吗
重写默认值
UserCreationForm()
class MyForm(UserCreationForm): email = forms.EmailField(required=True) email.help_text = '' ...
在视图模板中,而不是使用
{{ form.as_p }}
手动呈现表单<form action="" method="post">{% csrf_token %} {{ form.username.label }} {{ form.username }} ... </form>
设计自定义模板并将字段名映射到表单字段名。
希望有帮助!你知道吗
您没有指定这个UserCreationForm来自何处,也没有指定django版本,但无论如何:搜索django的代码源,似乎这些是默认
contrib.auth.forms.UserCreationForm
的各种小部件/字段的帮助文本,所以“要点和附加信息”实际上“应该马上显示”。就我而言(从用户的角度来看,我的意思是)它确实“马上出现”是件好事,所以我不必重复输入用户名和密码两次、三次或更多,直到我通过尝试/错误发现系统所期望的(或者,更多的时候,干脆放弃在这个网站上注册)。你知道吗现在,如果你真的想挫败你的用户(并在途中失去他们的一半),你当然可以通过rendering the form manually屏蔽所有有用的信息,这样你就可以完全控制消息的出现时间、地点和方式。你知道吗
相关问题 更多 >
编程相关推荐