django 1.6和python 3中是否有构建帐户应用程序的示例(包括:注册、登录和注销)
我确实读过官方文件,但它在阅读后分别描述了每个设施 “Django中的用户身份验证”、“第一步”、“模型层”、“视图层”、“模板层”和“表单”,我仍然不知道如何创建帐户系统 似乎没有django 1.6和python 3构建的帐户应用程序源代码或教程。我在哪里可以买到,谢谢 更新: 我所知道的是什么是一个帐户应用程序,我可以插入到任何新的项目。其URL将如下所示: accounts/register(此页面的表单类是从django.contrib.auth中的类User创建的) 帐户/登录 帐户/注销 accounts/profile(此页面的表单类是从模型创建的,该模型在views.py中有一个字段django 1.6和python 3中是否有构建帐户应用程序的示例(包括:注册、登录和注销),django,Django,我确实读过官方文件,但它在阅读后分别描述了每个设施 “Django中的用户身份验证”、“第一步”、“模型层”、“视图层”、“模板层”和“表单”,我仍然不知道如何创建帐户系统 似乎没有django 1.6和python 3构建的帐户应用程序源代码或教程。我在哪里可以买到,谢谢 更新: 我所知道的是什么是一个帐户应用程序,我可以插入到任何新的项目。其URL将如下所示: accounts/register(此页面的表单类是从django.contrib.auth中的类User创建的) 帐户/登录 帐户
OneToOneField(User)
)
from django.http import HttpResponse, HttpResponseRedirect
from django.contrib.auth import authenticate, login, logout
from django.core.context_processors import csrf
#Import a user registration form
from YourApp.forms import UserRegisterForm
# User Login View
def user_login(request):
if request.user.is_anonymous():
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
#This authenticates the user
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
#This logs him in
login(request, user)
else:
return HttpResponse("Not active")
else:
return HttpResponse("Wrong username/password")
return HttpResponseRedirect("/")
# User Logout View
def user_logout(request):
logout(request)
return HttpResponseRedirect('/')
# User Register View
def user_register(request):
if request.user.is_anonymous():
if request.method == 'POST':
form = UserRegisterForm(request.POST)
if form.is_valid:
form.save()
return HttpResponse('User created succcessfully.')
else:
form = UserRegisterForm()
context = {}
context.update(csrf(request))
context['form'] = form
#Pass the context to a template
return render_to_response('register.html', context)
else:
return HttpResponseRedirect('/')
在你的表单中.py
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm
class UserRegisterForm(UserCreationForm):
class Meta:
model = User
fields = ('first_name', 'last_name', 'email', 'username', 'password1', 'password2')
在您的URL.py中:
# Accounts urls
url(r'accounts/login/$', 'YourApp.views.user_login'),
url(r'accounts/logout/$', 'YourApp.views.user_logout'),
url(r'accounts/register/$', 'YourApp.views.user_register'),
最后,在register.html中:
<form action="/accounts/register/" method="POST"> {% csrf_token %}
<h2>Please enter your details . . .</h2>
{{ form.as_p }}
<input type="submit" value="Sign Up">
</form>
{%csrf\u令牌%}
请输入您的详细信息。
{{form.as_p}}
希望这能有所帮助。Django教程看起来是一个合适的起点,您首先要定义“帐户系统”的含义。除了允许用户登录、注销和注册之外,它还能做什么?然后您可以考虑实现。我不认为有专门针对你的“账户系统”教程。我确实读过第1部分到第6部分。但它们与注册、登录和注销系统无关一般来说,您必须创建一个模型来包含用户信息、显示注册的模板、登录和注销表单以及允许用户在不同模板之间导航的视图层。我建议按照整个教程执行所有建议的步骤,而不仅仅是阅读。你也可以使用django.contrib.auth,而不是自己实现所有这些。嘿,你有注册视图吗?或者从哪里得到这段代码,整个示例将是最好的。谢谢,谢谢。但当我尝试时,出现了一个错误“全局名称”csrf“未定义”。尝试“”或“”时,未找到页面(404)添加:从django.core.context\u处理器在views.py顶部导入csrf。此外,如果您需要任何帮助,请在问题中转储您的代码,主要是您的url.py(多个url.py,如果有)