1

我的问题是@login_required重定向到根页面而不是正确的下一个路径。 登录后/accounts/login/?next=/main/setka/重定向到'/'而不是。/main/setka/

有人可以帮助我吗?

编码:

头部网址

url(r'^main/', include('main.urls')),   
url(r'^accounts/',include('loginsystem.urls')),

登录系统.urls

(r'^login/$', 'django.contrib.auth.views.login'),

/main/ urls.py

(r'^setka/$', views.setka),

我在“/”主页上使用装饰器指向相应视图的链接

<li><a href="/main/setka/">Setka</a></li>

登录系统.views

@login_required
def setka(request):
    return render_to_response('main/setka.html')

login.html 包括

    {% load staticfiles %}

<link rel="stylesheet" type="text/css" href="{% static 'accounts/style.css' %}" />

{% if form.errors %}
<p class="error">Sorry invalid</p>
{% endif %}
<body>
<form action="/accounts/auth/" method="post"> {% csrf_token %}
<label for="username">User name:</label>
<input type="text" name="username" value="" id="username">
<label for="password">password:</label>
<input type="password" name="password" value="" id="password">

<input type="submit" value="login" />
<input type="hidden" name="next" value="{{next}}" />

</form>
</body>

网址链喜欢这样:'root/' -> root/accounts/login/?next=/main/setka/ -> '/' 而不是 'root/main/setka/'

任何建议将不胜感激。

具体来说,我想动态地将“下一个”路径附加到根地址,但它根本不附加“下一个”路径。

4

1 回答 1

1

很简单,您需要将LOGIN_URL和更改LOGIN_REDIRECT_URL为您想要的路径settings.py

例如:

LOGIN_URL = '/login/'
LOGIN_REDIRECT_URL = '/user/accounts/'
于 2013-07-12T14:05:41.667 回答