Требуется логин, декоратор не работает должным образом в Django - PullRequest
1 голос
/ 10 октября 2019

Требуется логин, декоратор не работает должным образом в django, он не будет перенаправлять должным образом на страницу входа в систему, если пользователь не зарегистрирован или не вошел в систему.

Так что в моей структуре django я сделал страницу входа другими страницамив проекте. Теперь я хочу сказать, если какой-то другой сторонний пользователь попытается запустить мою любую веб-страницу в это конкретное время, мой веб-сайт попросит его / ее для входа в систему, прежде чем получить доступ к моей странице любого веб-сайта, чтобы не допустить, чтобы я использовал декоратор, необходимый для входа, но когдаЯ вошел в систему и скопировал другой URL-адрес своей веб-страницы и вставил в новом окне, он не будет отображать страницу входа, просто откройте эту веб-страницу в новом окне. КАК ИСПРАВИТЬ ЕГО ????, ПОМОГИТЕ МНЕ ПОЖАЛУЙСТА, ПОЖАЛУЙСТА ..... ..

URL-адреса МОИХ САЙТОВ: -

    path("loggedin/",views.loggedin,name="loggedin"),

ПРОСМОТР СТРАНИЦЫ: -

    from django.contrib.auth.decorators import login_required

Это моя страница указателя, где пользователь может зарегистрировать себя ипосле этого они войдут в систему и перейдут на следующую страницу ......

def index(request):
    return render(request,'userside/index.html')

И это страница, которая идет после страницы индекса (главной панели)

@login_required(login_url='userside/loggedin')
#@staff_member_required
def mainpage(request):
    return render(request,"userside/mainpage.html")

Другая веб-страницамой проект

@login_required(login_url='/userside/loggedin')
def criminalsinfo(request):
    crimins=Criminals.objects.all()
    return render(request,'userside/criminalsinfo.html',{'crimins':crimins})

1 Ответ

1 голос
/ 10 октября 2019

yes означает, что в том же браузере мы открываем новое окно

Это означает, что вы уже вошли в систему.

Чтобы подтвердить это, в браузере перейдите на страницуна странице и в файлах cookie проверьте, есть ли sessionid или нет. Если да, то это означает, что вы уже вошли в систему.

Возможные решения:

  1. Удалить sessionid.
  2. Использовать режим incognito.
  3. Использование another browser.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...