django-bleach

Скріншот програми:
django-bleach
Дані програми:
Версія: 0.1.4
Дата завантаження: 20 Feb 15
Розробник: Tim Heap
Ліцензія: Безкоштовно
Популярність: 2

Rating: 4.0/5 (Total Votes: 1)

Django-відбілювач додаток Django, щоб відбілити та дезінфекції користувача HTML.
відбілювач модуль Python, який приймає будь HTML вхід і повертає дійсне, продезинфицированное HTML, який містить тільки дозволений підмножина HTML-теги, атрибути і стилів. Django-відбілювач додаток Django, що надзвичайно полегшує використання відбілювача.
Налаштування
1. Встановіть Django-відбілювач за допомогою PIP:
І NBSP; пункт встановити Django-відбілювач
2. Додати Django-відбілювач для ваших INSTALLED_APPS:
І NBSP; INSTALLED_APPS = [
І NBSP; # ...
І NBSP; 'django_bleach',
І NBSP; # ...
І NBSP;]
3. Виберіть деякі розумні значення за замовчуванням для дозволених тегів, атрибутів і стилів; і поведінку, коли невідомі теги зустрічаються. Кожен з них не є обов'язковими, і за замовчуванням використовувати відбілювач замовчуванням. Дивіться документацію відбілювання:
І NBSP; # Який HTML теги дозволені
І NBSP; BLEACH_ALLOWED_TAGS = ['р', 'B', 'я', 'U', 'Em', 'сильний', '']
І NBSP; # Який атрибути HTML дозволено
І NBSP; BLEACH_ALLOWED_ATTRIBUTES = ['HREF', 'Назва', 'стиль']
І NBSP; # Які властивості CSS дозволено в "Стиль" атрибути (за умови,
І NBSP; # стиль дозволив атрибут)
І NBSP; BLEACH_ALLOWED_STYLES = [
І NBSP; 'сімейство шрифтів', 'накреслення шрифту »,« текст-оздоблення »,« шрифт-варіант']
І NBSP; # Видаляє невідомі теги якщо це правда, замінити HTML втік символи, якщо
І NBSP; # Помилкові
І NBSP; BLEACH_STRIP_TAGS = True
І NBSP; # Видаляє коментарі, або залишити їх в.
І NBSP; BLEACH_STRIP_COMMENTS = False
4. Виберіть віджет за замовчуванням для відбілювання полів. Значення за замовчуванням django.forms.Textarea, але ви, ймовірно, хочете, щоб замінити його за допомогою редактора WYSIWYG, або щось подібне:
І NBSP; # Використовуйте CKEditorWidget блекотою полів HTML
І NBSP; BLEACH_DEFAULT_WIDGET = 'wysiwyg.widgets.WysiwygWidget "
Я використовую Django-CKEditor в моїх проектах, але те, що ви використовуєте до вас.
Використання
У вашій моделі
Django-відбілювач передбачає три способи створення блекотою вихід. Найпростіший спосіб включення користувача для редагування вмісту HTML, який автоматично продезінфікувати є використання польовий моделі BleachField:
# В додаток / models.py
від моделей імпортних Django
від django_bleach.models імпортувати BleachField
клас Post (models.Model):
І NBSP; назва = models.CharField ()
І NBSP; зміст = BleachField ()
І NBSP; # ...
BleachField приймає такі аргументи, налаштувати висновок відбілювача. Дивіться документацію відбілювач для їх використання:
- Allowed_tags
- Allowed_attributes
- Allowed_styles
- Strip_tags
- Strip_comments
На додаток до аргументів відбілювач конкретно, модель поле BleachField приймає всі звичайні атрибути поля. За лаштунками, це TextField, і приймає всі ті ж аргументи, що і за замовчуванням текстові поля зробити.
Модель поле BleachField використовує поля форми BleachField зробити всю роботу. Це не дає ніяких санітарної обробки об'єктів самостійно. Це вважається помилкою, але чисте рішення ще не були реалізовані. Будь тягнути запити кріпильні це буде з вдячністю застосовується. Поки модель поля BleachField використовується тільки з полями форм BleachField, не буде ніяких проблем. Якщо це не так, продезінфікувати HTML не може бути гарантована.
У ваших форм
Поле форми BleachField надається. Це поле sanitises вхід HTML від користувача, і являє безпечну, чисту HTML в додаток Django. Це де більша частина роботи виконується.
У шаблонах
Якщо у вас є peice змісту звідкись, що повинно бути надруковано в шаблоні, ви можете використовувати відбілювач фільтр:
{% Навантаження bleach_tags%}
{{Some_unsafe_content | Bleach}}
Фільтр не приймає ніяких аргументів. . Він використовує стандартні параметри, визначені в налаштуваннях програми

Вимоги

  • Python
  • Django

Інші програми розробника Tim Heap

django-pronouns
django-pronouns

14 Apr 15

wagtailnews
wagtailnews

1 Mar 15

django-bleach

Коментар не знайдено
додати коментар
Включіть картинки!