Django2.X diferencia en la url y la ruta de acceso y uso

Uno: la diferencia entre el camino y la URL:
django.urls trayectoria
django.conf.urls url

ruta y URL son dos módulos diferentes, el efecto es la última página de respuesta, la ruta se denomina módulos de terceros o marco pitón, url es módulos personalizados, como el valor del parámetro de la función DEF correspondiente a por lo Vistas de su URL.

Por ejemplo:

URL (R ^ '^ Login', views.login),
DEF Login (Request):
    devuelven el render (Solicitud, 'la login.html')

URL de enrutamiento de base
1, se proporciona un archivo ROOT_URLCONF settings.py, que se proporciona en al partido cuando se accede a la URL a través de la cual un archivo URL solicitada URL
2, utilizando el parámetro de ruta ruta de método ( 'blog / str: string / ') mucho más simple, es el paréntesis angulares, la parte delantera es del tipo str representante del parámetro, el siguiente símbolo el nombre del parámetro
tipo de parámetro de ruta:
la captura de la url parámetros necesitan utilizar paréntesis angulares <> entre paréntesis angulares especificados tipos de valor INT: astr: enlace de convertidor de este ejemplo hay muchos tipos:
int partido 0 y números enteros positivos
str igualar cualquier vacía pero no incluye cadena de caracteres /
Slug entiende que el código ASCII se han encontrado comentarios y subrayado conector comprende
UUID UUID un objeto coincidente (que debe incluir un guión (-), todos deben estar en minúsculas)
incluyendo el camino que todas las cadenas / (que significa camino Todo el frente y la parte trasera)
. re_path URL 3, o más complicadas (r '^ blog / (P [0-9] {4}?) /') primero tiene que iniciar y símbolo de fin de caracteres & # x27;) para iniciar la primera necesidad ^ pausas y al final 
')
 En primer lugar necesidad de iniciar el símbolo 
y
 el símbolo final, un juego de parámetros () es un parámetro de coincidencia,
(? P <coincide con el nombre del campo> expresiones regulares)
4, el parámetro correspondiente no está incluido y obtener el nombre de dominio o métodos de petición de correos como www.qq.com/blog?num=1 no coincide? Detrás del personaje
5, se puede establecer un valor por defecto para los parámetros de la petición, la más url paginación común, tales como

urlpatterns = [
      url (r '^ página / $', views.page),
     url (r '^ página (? P <num> [0-9] +) $', views.page)
]

#views

Página DEF (Solicitud, NUM = '1'):
     Paso

6, páginas de error personalizadas = blog.views.page_no_find palabra clave handler400
# urls.py
...
handler400 = blog.views.page_no_find

**

En segundo lugar, el uso django2 en python3, establece las direcciones URL de diferencia
**
uso django2 en python3 en el tiempo, las direcciones URL de ajuste en el tiempo, se encontrará una cisterna. Aquí para hacer un poco de grabación.
Urls.py sistema, en el momento 1.x, se basa en la forma url. de la siguiente manera

 url (r '^', incluye ( "test1.urls")),

en el 2,0, se recomienda utilizar la ruta del módulo, por lo que se vuelve a escribir aquí. Paquetes de django.urls imprimación ruta de importación

ruta ( '', include ( " test1.urls")),

a destacar aquí es que si desea utilizar regular, tendrá que introducir re_path, desde django.urls importación de trazados, re_path
existe regular de la escritura, una media de bits, asegúrese de uso () la envoltura regular, a continuación, utilizar el tipo de tabla? P expresión formal de esta forma. Urls.py en sus propios proyectos, habrá ejemplos

2, urls.py propios proyectos, sino que también utiliza la ruta
1.x fraseología interior es

url (r '^ page = (  \ d +) & = clave (\ w +) $', views.detail, name = "detalle"),

en su redacción

re_path (página = (? P <página> \ d +) & = clave (? P <clave> \ w +) ', views.detail, name = "detalle"),

una comparación de este tipo será capaz de entenderlo, mi enlace es http://127.0.0.1:8000/page=12&key=abc

3, el sistema urls.py problema en el espacio de nombres de
1.x por escrito

 url (r '^', incluyen ( "test1.urls", espacio de nombres = 'test1')),

pero en 2.0 por lo que escribe, se quejan, diciendo nombre_apl, y esto se puede buscar la forma de resolverlo, de hecho, muy sencillo, basta con añadir en sus propios proyectos en urls.py

nombre_apl = 'test1'

frase en la lista.
--------------------- 
Autor: xiaoyaosheng19 
Fuente: RDCC 
original: https: //blog.csdn.net/xiaoyaosheng19/article/details/82709298 
Aviso: Este artículo como un artículo original blogger, reproduce, por favor adjuntar enlace Bowen!

Publicado 24 artículos originales · elogios ganado 30 · Vistas a 50000 +

Supongo que te gusta

Origin blog.csdn.net/yufen9987/article/details/88427118
Recomendado
Clasificación