Насколько я понимаю, вам нужны два вида входа. В приложении views.py создать 2 точки зрения, например:
def loginDashboard(request):
if request.user.is_authenticated():
return HttpResponseRedirect('/')
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
password = form.cleaned_data['password']
account = authenticate(username=username, password=password)
if account is not None:
login(request, account)
#here is redirecting to dashboard
return HttpResponseRedirect('/dashboard/')
else:
return render(request, 'profiles/login.html', context)
else:
return render(request, 'profiles/login.html', context)
else:
form = LoginForm()
context = {'form':form}
return render(request, 'profiles/login.html', context)
def loginAdminPanel(request):
if request.user.is_authenticated():
return HttpResponseRedirect('/')
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
password = form.cleaned_data['password']
account = authenticate(username=username, password=password)
if account is not None:
login(request, account)
#here is redirecting to admin panel
return HttpResponseRedirect('/adminpanel/')
else:
return render(request, 'profiles/login.html', context)
else:
return render(request, 'profiles/login.html', context)
else:
form = LoginForm()
context = {'form':form}
return render(request, 'profiles/login.html', context)
И ваш urls.py:
url(r'^login-dash/$', views.loginDashboard),
url(r'^login-admin/$', views.loginAdminPanel),
В этом случае у вас есть два входа страниц (example.com/login-dash
и example.com/login-admin
)
your forms.py:
class LoginForm(forms.Form):
username = forms.CharField(label=(u'Username'))
password = forms.CharField(label=(u'Pasword'), widget=forms.PasswordInput(render_value=False))
Надеюсь, это поможет вам.
вы можете создать два вида. первая будет перенаправляться на «Панель мониторинга», а вторая - на «Панель администратора». –
С помощью форм входа вы хотите, чтобы вы использовали страницу входа по умолчанию в Django, а при успешном входе в систему она должна перенаправлять вас на другую высадку? –
Но, как я могу это сделать? Я искал, и только я нашел с ModelBackend:/и Than you so much! –