Herramientas de usuario

Herramientas del sitio


wiki2:python:django:urls

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
wiki2:python:django:urls [2018/10/11 19:38]
alfred creado
wiki2:python:django:urls [2020/05/09 09:25] (actual)
Línea 1: Línea 1:
 ====== Django URL's ====== ====== Django URL's ======
  
 +Añadir las urls de una app:
 +<​code>​
 +urlpatterns += [
 +    path('​catalog/',​ include('​catalog.urls'​)),​
 +]
 +</​code>​
 +
 +Redirigir una url a otra:
 +<​code>​
 +urlpatterns += [
 +    path('',​ RedirectView.as_view(url='/​catalog/'​)),​
 +]
 +</​code>​
 +
 +Urls con parámetros:​
 +<​code>​
 +...
 +path('​users/​activate/<​token>/',​ views.activate,​ name='​users_activate'​),​
 +...
 +def activate(request,​ token):
 +   user = get_user_model().objects.get(token=token)
 +...
 +url = reverse('​users_activate',​ args=(user.token,​))
 +</​code>​
 +
 +Enviar parámetros a la view:
 +<​code>​
 +path('​my_courses',​ CoursesListView.as_view(),​ {'​mine':​ True}, name='​my_courses'​),​
 +# In this example, for a request to /​blog/​2005/,​ Django will call views.year_archive(request,​ year=2005, foo='​bar'​).
 +</​code>​
 +
 +===== URL dispatchers =====
 +
 +<code python>
 +from django.urls import path, register_converter
 +from . import converters, views
 +
 +class FourDigitYearConverter:​
 +    regex = '​[0-9]{4}'​
 +
 +    def to_python(self,​ value):
 +        return int(value)
 +
 +    def to_url(self,​ value):
 +        return '​%04d'​ % value
 +
 +register_converter(converters.FourDigitYearConverter,​ '​yyyy'​)
 +
 +urlpatterns = [
 +    path('​articles/​2003/',​ views.special_case_2003),​
 +    path('​articles/<​yyyy:​year>/',​ views.year_archive),​
 +    ...
 +]
 +</​code>​
wiki2/python/django/urls.1539286701.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)