【发布时间】:2015-04-20 04:17:42
【问题描述】:
我正在尝试在 url 中包含用户名,但我无法再注销而不会出现此错误:
追溯到views.py中的这一行:
u = MyUser.objects.get(username=username)
知道我做错了什么吗?
这是我的views.py:
@login_required
def account_home(request, username):
u = MyUser.objects.get(username=username)
return render(request, "accounts/account_home.html", {})
def auth_logout(request):
logout(request)
return HttpResponseRedirect('/')
urls.py
urlpatterns += patterns('accounts.views',
# url(r'^account/$', 'account_home', name='account_home'),
url(r'^(?P<username>[\w.@+-]+)/$', 'account_home', name='account_home'),
url(r'^logout/$', 'auth_logout', name='logout'),
url(r'^login/$', 'auth_login', name='login'),
url(r'^register/$', 'auth_register', name='register'),
)
谢谢大家!
【问题讨论】:
-
您是否尝试过将用户名参数更改为“user”之类的内容,以便在定义 u 时不会发生冲突?
-
您的
urls.py是什么样的?您似乎正在尝试在用户名丢失或不正确的上下文中使用account_home视图,这可能是由于注销后重定向到/的结果。 -
我在注销后重定向到“/”。我应该把它重定向到哪里? @PeterDeGlopper 我也添加了我的 urls.py
标签: python django django-views django-users