![](/img/trans.png)
[英]Is there any way to make a second LOGIN_REDIRECT_URL in settings.py in Django?
[英]How to pass a parameter to login view in django while reversing from login url in settings.py?
我遇到以下問題:我有一個需要在登錄時傳遞參數的應用程序,因此url結構如下-> http://baseURL.com/paramter/
其中“參數”是一個變量,稍后從數據庫中進行匹配。
該項目工作正常,除非出現以下情況: http : //baseURL.com/paramter/home
其中“ home”是一個視圖,要求用戶通過@login_required登錄,以便項目檢查settings.py文件中的login_url並嘗試去那里,然后出現以下錯誤:
NoReverseMatch at /parameter/home/
Reverse for 'login_view' with arguments '()' and keyword arguments '{}' not found.
LOGIN_URL = reverse_lazy('login_view')
def login_view(request, parameter):
url(r'^(?P<parameter>\w+)/$', 'myproject.apps.myapp.views.login_view'),
那么,如果settings.py在url配置之前進入登錄視圖,該如何傳遞該參數?
您可以簡單地將參數作為kwargs
傳遞給反向函數
LOGIN_URL = reverse_lazy('login_view', kwargs={'parameter': 'login_parameter'})
https://docs.djangoproject.com/en/dev/ref/urlresolvers/#reverse
通常,登錄網址不屬於settings.py
。 您只需將其放入您的urls.py
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.