У меня есть страница входа в систему в качестве домашней страницы, localhost / mysite. Я могу войти в систему и успешно перенаправиться на localhost / mysite / mainpage.
Проблема в том, что я могу обойти вход, просто введя путь в URL, например; Я перехожу на домашнюю страницу, где находится форма входа, затем просто добавляю / mainpage к localhost / mysite /, которая успешно загружает localhost / mysite / mainpage.
Как вы могли догадаться, это не так уж и хорошо. Кто-нибудь знает, что я тут не так сделал?
Мой взгляд
def index(request):
if request.method == "POST":
form = AuthenticationForm(request, data=request.POST)
if form.is_valid():
username = form.cleaned_data.get('username')
password = form.cleaned_data.get('password')
user = authenticate(username=username, password=password)
if user is not None:
login(request, user)
messages.info(request, "OK")
return redirect('/mysite/mainpage')
else:
messages.error(request, "NOT OK")
form = AuthenticationForm()
return render(request, 'mysite/login.html', {"form":form})
Мой urls.py
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^mainpage/$', views.main),
]