django-protocolify

Software screenshot:
django-protocolify
Software detaljer:
Version: 0.1.1
Upload dato: 12 May 15
Udvikler: Bradley Ayers
Licens: Gratis
Popularitet: 12

Rating: 2.0/5 (Total Votes: 1)

Django-protocolify er en skabelon tag for Django, der giver den protokol / ordningen anvendes i links i en blok af skabelon kode, der skal ændres.
En use-tilfælde til dette er, når en del af dit websted bruger HTTPS (fx en betalingsside), og du ønsker, at brugeren til at vende tilbage til at bruge HTTP hvis de forlader siden. Typisk du skal bruge den {% url%} skabelon tag til at generere URL'er, men dette vil resultere i URL'er som:
/ produkter /
snarere end:
http://example.com/products/
Det betyder, at når en bruger indtaster en HTTPS side, vil de blive hængende ved hjælp af HTTPS, medmindre de manuelt ændre webadressen i deres browsers adresselinje.
Det er her, Django-protocolify skinner.
Anvendelse
{% Protocolify [gammel] til %}
Eksempel (forudsat anmodning var at http://example.com/blah/):
{% Belastning protocolify%}
{% Protocolify til "https"%}










{% Endprotocolify%}
gør til:










Dette er i øjeblikket implementeres ved hjælp af et par simple regulære udtryk og urlparse.urljoin () (Bemærk: gamle standard [a-zA-Z] +):
# F.eks href = "http://google.com"
re.sub (r «(src | href) ="% s: // '% gamle, r' 1 = "% s: // '% ny, ...)
# F.eks href = "../ produkter"
re.findall (r "" "(src | href) = (" | ") ([az] [a-Z0-9 + -.] *:?!.?) (*) 2" "")
Når en relativ sti erstattes (f.eks ../products) det er sluttet til request.path. For at dette skal fungere, skal skabelonen kontekst indeholde HttpRequest i en anmodning variabel. Dette kan opnås ved anvendelse af en RequestContext og tilføje "django.core.context_processors.request" til TEMPLATE_CONTEXT_PROCESSORS indstilling.
Domæne ambiguitity indføres, når en relativ sti (f.eks / produkter /) er protocolified (fordi domænet skal specificeres). Domain gætte udføres i følgende rækkefølge:
1. request.META ["HTTP_HOST"] - når sammenhæng indeholder anmodningen
2. Site.objects.get_current (). Domæne
Installation
1. Hent og installer: pip installere Django-protocolify
2. Tilføj "protocolify" til INSTALLED_APPS indstillingen i dit projekt

Krav :.

  • Python
  • Django

Andre software developer Bradley Ayers

django-tokenfield
django-tokenfield

11 May 15

django-attest
django-attest

20 Feb 15

Kommentarer til django-protocolify

Kommentarer ikke fundet
Tilføj kommentar
Tænd billeder!