0
我觉得@login_required
非常有用。我在每个视图之前都使用了这个@login_required(login_url='/login/')
。如果用户试图访问/upload
URL重定向到URL为:http://127.0.0.1:8000/login/?next=/upload_file/
我的网址是非常简单的:现在@login_required在Django中没有像预期的那样工作?
urlpatterns = patterns('',
#url(r'^admin/', include(admin.site.urls)),
url(r'^upload_file/', 'fileupload.views.upload_file'),
url(r'^show_file/', 'fileupload.views.show_list'),
url(r'^sync/', 'fileupload.views.sync'),
url(r'^login/', 'fileupload.views.login_user'),
url(r'^upload_file_form', 'fileupload.views.upload_file_form')
)
当用户按下登录页面重定向到任何地方。我相信我的网址格式不正确。我错过了什么?由于
编辑:
def login_user(request):
errors = []
state = "LOG IN"
username = password = ''
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = authenticate(username='username', password='password')
if user is not None:
if user.is_active:
login(request, user)
state = "You're successfully logged in!"
else:
state = "Your account is not active, please contact the site admin."
else:
state = "Your username and/or password were incorrect."
return render_to_response('login.html', {'state':state, 'username': username}, context_instance=RequestContext(request))
我该怎么做? – user1881957
看看Django视图的实现方式 - 'django.contrib.auth.views' –
我已经在我的模板中指定了下一个:但同样的错误。 – user1881957