django-bleach

Tela Software:
django-bleach
Detalhes de Software:
Versão: 0.1.4
Data de upload: 20 Feb 15
Revelador: Tim Heap
Licença: Livre
Popularidade: 2

Rating: 4.0/5 (Total Votes: 1)

django-lixívia é um app Django para branquear e higienizar HTML usuário.
água sanitária é um módulo Python que leva qualquer entrada HTML, e retorna HTML válida, higienizado que contém apenas um subconjunto permitido de tags HTML, atributos e estilos. django-lixívia é um app Django que torna o uso de água sanitária extremamente fácil.
Configuração
1. Instale o django-lixívia via pip:
& Nbsp; pip instalar django-lixívia
2. Adicione django-lixívia para suas INSTALLED_APPS:
& Nbsp; INSTALLED_APPS = [
& Nbsp; # ...
& Nbsp; "django_bleach ',
& Nbsp; # ...
& Nbsp;]
3. Selecione alguns padrões razoáveis ​​para as tags permitidos, atributos e estilos; eo comportamento quando as tags desconhecidos são encontrados. Cada um destes são opcionais, e como padrão usando os padrões de branqueamento. Consulte a documentação de lixívia:
& Nbsp; # Que tags HTML são permitidos
& Nbsp; BLEACH_ALLOWED_TAGS = ['p', 'b', 'i', 'u', 'em', 'forte', 'a']
& Nbsp; # Que atributos HTML são permitidas
& Nbsp; BLEACH_ALLOWED_ATTRIBUTES = ['href', 'title', 'estilo']
& Nbsp; # Que propriedades CSS são permitidos no "estilo" atributos (supondo
& Nbsp; # estilo é um atributo permitido)
& Nbsp; BLEACH_ALLOWED_STYLES = [
& Nbsp; 'font-family', 'font-weight', 'text-decoration "," font-variant']
& Nbsp; # strip tags desconhecidos Se for verdade, substituir com HTML escapou caracteres se
& Nbsp; # False
& Nbsp; BLEACH_STRIP_TAGS = True
& Nbsp; comentários # tira, ou deixá-los em.
& Nbsp; BLEACH_STRIP_COMMENTS = False
4. Selecione o widget padrão para os campos de branqueamento. Esse padrão para django.forms.Textarea, mas você provavelmente vai querer substituí-lo com um editor WYSIWYG, ou algo similar:
& Nbsp; # Use a CKEditorWidget para campos HTML branqueados
& Nbsp; BLEACH_DEFAULT_WIDGET = 'wysiwyg.widgets.WysiwygWidget'
Eu uso o django-ckeditor em meus projetos, mas o que você usa é até você.
Uso
Em seus modelos
django-lixívia oferece três formas de criação de saída branqueada. A maneira mais simples de incluir conteúdo HTML editável pelo usuário, que é automaticamente higienizado é usando o campo de modelo Bleachfield:
# Em app / models.py
a partir de modelos de importação django
de django_bleach.models importar Bleachfield
classe Post (models.Model):
& Nbsp; title = models.CharField ()
& Nbsp; content = Bleachfield ()
& Nbsp; # ...
Bleachfield leva os seguintes argumentos, para personalizar a saída de água sanitária. Consulte a documentação de lixívia para a sua utilização:
- allowed_tags
- allowed_attributes
- allowed_styles
- strip_tags
- strip_comments
Além dos argumentos específicos de branqueamento, o campo modelo Bleachfield aceita todos os atributos normais de campo. Nos bastidores, é um TextField, e aceita todos os mesmos argumentos que o padrão TextFields fazer.
O campo de modelo Bleachfield faz uso do campo de formulário Bleachfield para fazer todo o trabalho. Não possui em si instalações higienização. Este é considerado um bug, mas uma solução limpa ainda não foi implementado. Todos os pedidos de fixação de puxar este será aplicado com gratidão. Enquanto o modelo de campo Bleachfield só é utilizado com campos de formulário Bleachfield, não haverá qualquer problema. Se este não for o caso, o HTML higienizado não pode ser garantida.
Em seus formulários
Um campo de formulário Bleachfield é fornecido. Este campo higieniza entrada HTML do usuário, e apresenta cofre, HTML limpa para seu aplicativo Django. Este é o lugar onde a maior parte do trabalho é feito.
Em seus modelos
Se você tem um pedaço de conteúdo de algum lugar que precisa ser impresso em um modelo, você pode usar o filtro de água sanitária:
{Carga% bleach_tags%}
{{Some_unsafe_content | lixívia}}
O filtro não tem argumentos. . Ele usa as configurações padrão definidos em suas configurações do aplicativo

Requisitos :

  • Python
  • Django

Outro software de desenvolvedor Tim Heap

wagtailnews
wagtailnews

1 Mar 15

django-pronouns
django-pronouns

14 Apr 15

Comentário para django-bleach

Comentários não encontrado
Adicionar comentário
Ligue imagens!