django-protocolify

Software captura de pantalla:
django-protocolify
Detalles de software:
Versión: 0.1.1
Fecha de carga: 12 May 15
Promotor: Bradley Ayers
Licencia: Libre
Popularidad: 12

Rating: 2.0/5 (Total Votes: 1)

django-protocolify es una etiqueta de plantilla para Django que permite el protocolo / esquema utilizado en enlaces dentro de un bloque de código de la plantilla que desea cambiar.
Un caso de uso de esto es cuando una sección de su sitio Web utiliza HTTPS (por ejemplo, una página de pago) y desea que el usuario pueda volver a usar HTTP si salen de la página. Normalmente, usted va a utilizar el {% url%} etiqueta de plantilla para generar URLs, sin embargo, esto se traducirá en URLs como:
/ productos /
Más bien que:
http://example.com/products/
Esto significa que una vez que un usuario entra en una página HTTPS, se pegan mediante HTTPS a menos que modificar manualmente la dirección URL en la barra de direcciones de su navegador.
Aquí es donde django-protocolify brilla.
Uso
{% Protocolify [edad] para %}
Ejemplo (solicitud asumiendo era http://example.com/blah/):
{% Protocolify carga%}
{% Protocolify a "https"%}










{%}% Endprotocolify
rinde a:










Esto se implementa actualmente el uso de un par de expresiones regulares simplistas y urlparse.urljoin () (Nota: viejos por defecto es [a-zA-Z] +):
# Por ejemplo, href = "http://google.com"
re.sub (r '(src | href) = "% s: //'% edad, r ' 1 ="% s: //'% nueva, ...)
# Por ejemplo, href = "../ productos"
re.findall (r "" "(src | href) = (" | ") ([az] [a-z0-9 + -.] *:?!.?) (*) 2" "")
Cuando se sustituye una ruta relativa (por ejemplo ../products) se unió a la Request.Path. Para que esto funcione, el contexto de la plantilla debe contener el HttpRequest en una variable de petición. Esto se puede lograr mediante el uso de un RequestContext y la adición de "django.core.context_processors.request" para el ajuste TEMPLATE_CONTEXT_PROCESSORS.
Ambiguitity dominio se introduce cuando se protocolified una ruta relativa (por ejemplo, / productos /) (porque el dominio se debe especificar). Conjeturas de dominio se realizan en el siguiente orden:
1. request.META ["HTTP_HOST"] - cuando el contexto contiene la solicitud
2. Site.objects.get_current (). Dominio
Instalación
1. Descargar e instalar: pip instalar django-protocolify
2. Agregue "protocolify" para el ajuste INSTALLED_APPS en su proyecto

Requisitos .

  • Python
  • Django

Otro software de desarrollador Bradley Ayers

Comentarios a la django-protocolify

Comentarios que no se encuentran
Añadir comentario
A su vez en las imágenes!