redsolutioncms.django-betrodda-html kommer att göra din HTML korrekt, vackra och säker.
Förebyggande lyrics
Antag att en del användare kan lägga upp innehåll på din webbplats. Och du vill tillåta dem att skicka formaterad text, bilder, tabeller och videor. Det bästa sättet är att använda HTML som ursprungligt format och WYSIWYG editor som användargränssnitt. Så användarna skapar innehållet lätt och blir nöjda. De kommer att kunna kopiera och klistra in innehåll från andra webbplatser eller GUI-redaktörer. Men du kan bli olycklig. Din webbplats kan ser inte homogen på grund av olika font-familjer färger, indrag som kommer med kopiera och klistras innehåll. Även du kan önska för att skydda din webbplats från JavaScript injektioner. På detta sätt kanske du vill använda django-betrodda-html.
Sanitizing
Detta är applikation för desinficering HTML från:
& Nbsp; 1. javascript injektioner
& Nbsp; 2. obehag CSS-format
& Nbsp; 3. obehag taggar
& Nbsp; 4. stötande eller otillgängliga länkar, bilder och inbäddade objekt
Till exempel kan du:
& Nbsp; 1. ta bort skript från `s innehåll som publiceras på din webbplats
& Nbsp; 2. ta bort användardefinierade teckensnitt och färger för att göra din webbplats ser ganska
& Nbsp; 3. tillåter användaren att skicka video till exempel från "youtube.com"
& Nbsp; 4. inaktivera bilder arrangerade inte på din egen webbplats
Valid HTML
Detta är ansökan om att giltig HTML:
& Nbsp; 1. avlägsna felaktiga taggar, attribut, css-egenskaper och css-värden som inte är tillåtna på denna fastighet
& Nbsp; 2. kontrollera och ta bort bruten länk, och göra några fler saker med dem
Till exempel kan du:
& Nbsp; 1. göra allt ditt innehåll w3c giltiga
& Nbsp; 2. ta bort trasiga länkar till andra webbplatser
& Nbsp; 3. avlägsna värdnamn från länkar till din webbplats.
Anpassad
Du kan:
& Nbsp; 1. Välj en av förinställningar
& Nbsp; 2. ange inställningar för validering
& Nbsp; 3. skräddarsy regler för validering
Installation:
& Nbsp; 1. Sätt trustedhtml in på ditt INSTALLED_APPS i settings.py inom din django projektet.
& Nbsp; 2. Synkronisera din databas:
& Nbsp; ./ manage.py SyncDB
& Nbsp; 3. Anpassa inställningar i din settings.py.
Om du vill veta mer om inställningarna läser trustedhtml / settings.py.
Användning:
I dina modeller:
& Nbsp; 1. Du kan använda TrustedField i din modell
& Nbsp; från trustedhtml.fields importera TrustedTextField
& Nbsp; klass MyModel (models.Model):
& Nbsp; html = TrustedTextField ()
Även du kan ange en av fördefinierade validerare
från trustedhtml.rules importera fullt normal, söt
från trustedhtml.fields import TrustedTextField
klass MyModel (models.Model):
& Nbsp; html = TrustedTextField (validator = ganska)
trustedhtml.rules.full regeln kommer säkert alla html-taggar och css stil beskrivs av w3c.
trustedhtml.rules.normal regel kommer att ta bort farliga html element eller element som kan bryta du designar.
trustedhtml.rules.pretty regel också tar bort färger, teckensnitt, justerar, marginaler och andra CSS och HTML attribut.
Förresten, om du har django-TinyMCE i INSTALLED_APPS, än du kan använda TrustedHTMLField.
& Nbsp; 2. Du kan validera html innan det sparas:
& Nbsp; från trustedhtml.rules importerar ganska
& Nbsp; klass MyModel (models.Model):
& Nbsp; html = models.TextField ()
& Nbsp; def spara (själv, * args, ** kwargs):
& Nbsp; self.html = pretty.validate (self.html)
& Nbsp; super (MyModel, själv) .save (* args, ** kwargs)
Eller:
från trustedhtml.rules importerar ganska
från someapp.models import SomeModel
def content_save (avsändare, exempelvis ** kwargs):
& Nbsp; instance.content = pretty.validate (instance.content)
pre_save.connect (content_save, avsändare = SomeModel)
& Nbsp; 3. Du kan validera html genom att använda widget:
& Nbsp; från django import former
& Nbsp; från trustedhtml.widgets importera TrustedTextarea
& Nbsp; klass FormField (forms.TextField):
& Nbsp; widget = TrustedTextarea
Om du använder django-sidor-cms, kan du bara använda TrustedWidget mallar:
{% Platshållare main_content med TrustedTextarea%}
Eller för äldre versioner av django-sidor-cms:
{% Platshållare main_content med trustedhtml.widgets.TrustedTextarea%}
Även om du använder TinyMCE:
{% Platshållare main_content med trustedhtml.widgets.TrustedTinyMCE%}
Eller för äldre versioner av django-sidor-cms:
{% Platshållare main_content med TrustedTinyMCE%}
& Nbsp; 4. Du kan bara be pålitliga html för att validera de berörda områdena i specificerade modeller.
I vissa program:
klass SomeModel (models.Model):
& Nbsp; name = models.CharField (MAX_LENGTH = 100)
& Nbsp; description = models.TextField ()
I din settings.py:
& Nbsp; TRUSTEDHTML_MODELS = [
& Nbsp; {
& Nbsp; "modell": "someapp.models.SomeModel",
& Nbsp; "fält": ["beskrivning",],
& Nbsp;}
]
Vad är nytt i den här versionen:
- Tillåt element från betrodda sitter (för youtube filmer)
Vad är nytt i version 0.1.1:
- Tillåt & lt; iframe & gt; element från betrodda sitter (för youtube filmer)
Krav :
- Python
- Django
Kommentarer hittades inte