django - 注册后 Django 重定向到特定的 URL
问题描述
再会。
我正在尝试将用户重定向到特定的 url,在我的情况下是rootPath/dashboard/
但是当用户注册时我被重定向到/user/register/dashboard/
我已经搜索了有关相同问题的其他 stackoverflow 主题,但它们没有解决我的问题。
我已经在settings.py
LOGIN_URL = 'user/login/'
LOGOUT_URL = 'user/logout/'
LOGIN_REDIRECT_URL = 'dashboard/'
视图.py
def register(request):
form = RegisterForm(request.POST or None)
if request.POST:
if form.is_valid():
data = form.cleaned_data
email = data['email']
pwd = data['password']
user = User(email=email, password=pwd)
user.save()
return redirect(settings.LOGIN_REDIRECT_URL)
return render(request, 'registration/register.html', context={'form': form})
@login_required
def dashboard(request):
return render(request, 'user/dashboard.html')
网址.py
urlpatterns = [
path('user/login/', CustomLoginView.as_view(), name='login'),
path('user/logout/', auth_logout, name='logout'),
path('user/register/', register, name='register'),
path('dashboard/', dashboard, name='dashboard')
]
注册.html
{% extends 'base.html' %}
{% load static %}
{% block content %}
<div class="container text-center">
{% if form.errors %}
{% for field in form %}
{% for error in field.errors %}
<div class="alert alert-danger">
<strong>{{ error|escape }}</strong>
</div>
{% endfor %}
{% endfor %}
{% for error in form.non_field_errors %}
<div class="alert alert-danger">
<strong>{{ error|escape }}</strong>
</div>
{% endfor %}
{% endif %}
<h1 class="h3 mb-3 font-weight-normal">Register</h1>
<form class="form-signin" action="." method="post">
{{ form.as_p }}
{% csrf_token %}
<p><input type="submit" value="Register" class="btn btn-primary"></p>
{# <a href="{% url 'user:forgot-password' %}"><input type="button" value="Forgot Password"></a>#}
</form>
</div>
{% endblock %}
解决方案
您可以像这样使用重定向重定向到任何特定的网址
return redirect('dashboard') #return redirect('url_name')
如果app_name
提供了它会是这样的
return redirect('app_name:url_name')
推荐阅读
- python - 将excel邻接矩阵转换为在python中可读
- javascript - JS 文件未在终端中与 Node.js 一起运行
- c++ - 什么是“v.template 是
()" 在这个 C++ 程序中? - reactjs - 为什么我不能使用
在 ReactJS 中的另一个标签之外的标签? - ruby - Mechanize Rails - Web Scraping - 服务器使用 JSON 响应 - 如何解析 URL 以下载 CSV
- javascript - 刮擦 | 关注由动态“加载更多”按钮加载的链接
- java - asdf install [警告] JVM 风格 'sun' 不理解
- python - 如何从盈透证券 API 获取新闻合约详情?
- python - 列表中无序对值的 Python 数据结构
- c++ - C ++中的“没有调用X的匹配函数”错误