Почему этот код имеет эту ошибку: «Ожидается :)»? - PullRequest
1 голос
/ 14 апреля 2011

Я получаю сообщение об ошибке от Aptana «Ожидается :)» в этом коде в строке return render_to_response после последнего else:. Я не могу понять, почему это так, потому что, насколько я могу судить, я закрыл все свои скобки. Я предполагаю, что это на самом деле какая-то другая ошибка, и Aptana (ветвь Eclipse) просто недостаточно умен, чтобы дать мне реальную ошибку. Когда я пытаюсь загрузить веб-страницу, используя другое представление в этом файле, он сообщает мне только, что это синтаксическая ошибка.

def login(request):
    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)
                return HttpResponseRedirect('/')
            else:
                #return a 'disabled account' error message
                return HttpResponseRedirect('/disabled_account/')
        else:
            return render_to_response('login.html', {
                                         'failed_login' : True,
                                         'form' : AuthenticationForm()
                                                    },
                                        context_instance=RequestContext(request),
                                     )
    else:
        return render_to_response('login.html' {
                                        'failed_login' : False,
                                        'form' : AuthenticationForm()
                                                    },
                                        context_instance=RequestContext(request),
                                     )

Ответы [ 2 ]

4 голосов
/ 14 апреля 2011

Отсутствует запятая после 'login.html' в else: section

2 голосов
/ 14 апреля 2011

Вам не хватает запятой после имени шаблона в последней строке возврата.У вас есть:

return render_to_response('login.html' {
                                    'failed_login' : False,
                                    'form' : AuthenticationForm()
                                                },
                                    context_instance=RequestContext(request),
                                 )

Но это должно быть:

return render_to_response('login.html', {
                                    'failed_login' : False,
                                    'form' : AuthenticationForm()
                                                },
                                    context_instance=RequestContext(request),
                                 )
...