redsolutioncms.django-confiance-html rendra votre HTML correcte, jolie et sûre.
Lyrics Utilisation
Supposons que certains utilisateurs peuvent publier du contenu sur votre site. Et vous voulez leur permettre d'afficher du texte formaté, des images, des tableaux et des vidéos. La meilleure façon est en utilisant HTML comme format natif et éditeur WYSIWYG comme interface utilisateur. Ainsi, vos utilisateurs de créer du contenu facile et seront heureux. Ils seront en mesure de copier-coller le contenu d'autres sites ou GUI-rédacteurs. Mais vous pouvez devenir malheureux. Votre site peut semble pas homogène en raison des différentes polices-familles, les couleurs, tirets qui viendront avec copie-et-collé contenu. Aussi, vous pouvez vouloir protéger votre site des injections JavaScript. De cette façon, vous pouvez utiliser django-confiance-html.
La désinfection
Cette demande est pour l'assainissement HTML à partir de:
& Nbsp; 1. injections javascript
& Nbsp; 2. styles CSS répréhensibles
& Nbsp; 3. balises répréhensibles
& Nbsp; 4. liens répréhensibles ou inaccessibles, images et objets incorporés
Par exemple, vous pouvez:
& Nbsp; 1. Retirer son contenu de l`utilisateur affichés sur votre site
& Nbsp; 2. supprimer les polices et les couleurs spécifiées par l'utilisateur pour rendre votre site semble assez
& Nbsp; 3. Permettre à l'utilisateur d'afficher la vidéo par exemple qu'à partir de "youtube.com"
& Nbsp; 4. images désactiver disposés pas sur votre propre site
Valid HTML
Cette demande est pour faire du HTML valide:
& Nbsp; 1. supprimer des balises incorrectes, les attributs, les propriétés CSS et CSS-valeurs non acceptés à cette propriété
& Nbsp; 2. vérifier et supprimer un lien mort, et faire quelques plus de choses avec eux
Par exemple, vous pouvez:
& Nbsp; 1. faire tout votre contenu w3c valide
& Nbsp; 2. supprimer les liens brisés vers d'autres sites
& Nbsp; 3. retirer le nom d'hôte à partir des liens vers votre site.
perso
Vous pouvez:
& Nbsp; 1. choisissez l'une des presets
& Nbsp; 2. spécifier les paramètres de validation
& Nbsp; 3. personnaliser les règles de validation
Installation:
& Nbsp; 1. Mettez trustedhtml pour vos INSTALLED_APPS dans votre settings.py au sein de votre projet Django.
& Nbsp; 2. Synchronisez votre base de données:
& Nbsp; ./ manage.py syncdb
& Nbsp; 3. Personnaliser les paramètres dans votre settings.py.
Pour en savoir plus sur les paramètres de lire trustedhtml / settings.py.
Utilisation:
Dans vos modèles:
& Nbsp; 1. Vous pouvez utiliser TrustedField dans votre modèle
& Nbsp; de trustedhtml.fields importer TrustedTextField
& Nbsp; classe MyModel (models.Model):
& Nbsp; html = TrustedTextField ()
Aussi, vous pouvez spécifier un des validateurs prédéfinis
de trustedhtml.rules importation complète, normale, assez
de trustedhtml.fields importation TrustedTextField
MyModel de classe (models.Model):
& Nbsp; html = TrustedTextField (validateur = jolie)
règle de trustedhtml.rules.full sera sécuritaire toutes les balises HTML et style css décrit par le W3C.
règle de trustedhtml.rules.normal va supprimer élément html dangereux, ou des éléments qui peuvent se briser vous concevez.
règle de trustedhtml.rules.pretty va également supprimer les couleurs, polices, aligne, les marges et autres attributs de CSS et HTML.
En passant, si vous avez django-tinymce dans INSTALLED_APPS, que vous pouvez utiliser TrustedHTMLField.
& Nbsp; 2. Vous pouvez valider html avant d'être sauvé:
& Nbsp; de trustedhtml.rules importer assez
& Nbsp; classe MyModel (models.Model):
& Nbsp; html = models.TextField ()
& Nbsp; def SAVE (auto, * args, ** kwargs):
& Nbsp; self.html = pretty.validate (self.html)
& Nbsp; super (MyModel, auto) .save (* args, ** kwargs)
Ou:
de trustedhtml.rules importent assez
de someapp.models SomeModel d'importation
def content_save (expéditeur, par exemple, ** kwargs):
& Nbsp; instance.content = pretty.validate (instance.content)
pre_save.connect (content_save, l'expéditeur = SomeModel)
& Nbsp; 3. Vous pouvez valider html en utilisant widget:
& Nbsp; des formes d'importation de django
& Nbsp; de trustedhtml.widgets importer TrustedTextarea
& Nbsp; classe FormField (forms.TextField):
& Nbsp; le widget = TrustedTextarea
Si vous êtes en utilisant django-pages-CMS, vous pouvez simplement utiliser TrustedWidget dans les modèles:
{% Main_content espace réservé avec TrustedTextarea%}
Ou pour les anciennes versions de Django-pages-cms:
{% Main_content espace réservé avec trustedhtml.widgets.TrustedTextarea%}
Aussi, si vous utilisez TinyMCE:
{% Main_content espace réservé avec trustedhtml.widgets.TrustedTinyMCE%}
Ou pour les anciennes versions de Django-pages-cms:
{% Main_content espace réservé avec TrustedTinyMCE%}
& Nbsp; 4. Vous pouvez simplement demander html confiance pour valider les champs spécifiés dans les modèles spécifiés.
Dans certaines applications:
SomeModel de classe (models.Model):
& Nbsp; name = models.CharField (max_length = 100)
& Nbsp; description = models.TextField ()
Dans votre settings.py:
& Nbsp; TRUSTEDHTML_MODELS = [
& Nbsp; {
& Nbsp; «modèle»: «someapp.models.SomeModel ',
& Nbsp; «champs»: ['description',],
& Nbsp;},
]
Ce qui est nouveau dans cette version:
- Permettre aux éléments de confiance se repose (pour les films youtube)
Quoi de neuf dans la version 0.1.1:
- Laissez & lt; iframe & gt; éléments de confiance se repose (pour les films youtube)
Exigences :
- Python
- Django
Commentaires non trouvées