Ho un piccolo problema nel capire come funziona {% url 'something' %}
nei modelli django.Come ottenere correttamente l'url per la vista di accesso nel modello?
Quando eseguo il mio sito in modalità debug, vedo questo in stdout:
web_1 | [21/Dec/2015 11:29:45] "GET /accounts/profile HTTP/1.1" 302 0
web_1 | /usr/local/lib/python3.5/site-packages/django/template/defaulttags.py:499: RemovedInDjango110Warning: Reversing by dotted path is deprecated (django.contrib.auth.views.login).
web_1 | url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
web_1 |
I/mappe profilo/account a un modello, e l'unico posto in questo modello che cita django.contrib.auth.views.login
è il seguente:
<a href="{% url 'django.contrib.auth.views.logout' %}?next={% url 'django.contrib.auth.views.login' %}">Log out</a>
Quindi, credo che per qualche ragione questo non è il modo corretto di usare il comando {% url%}. Qual è il modo corretto? Come sbarazzarsi di questo avvertimento?
qui sono i miei urlpatterns:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^accounts/', include('django.contrib.auth.urls')),
url(r'^accounts/profile', views.profile_view),
url(r'^$', RedirectView.as_view(url=reverse_lazy(views.profile_view)))
]
nel modello utilizzerà il nome della voce di URL (come definito in 'URL. py') ovvero "Log out" – Pynchia