предел уценки в Джанго - PullRequest
       5

предел уценки в Джанго

1 голос
/ 16 августа 2011

Я использую уценку в системе комментариев в своем блоге, разработанной с использованием django. Я хочу ограничить возможный формат для приема только основного (с полужирным шрифтом, курсивом, ссылкой и кодом )

Как мне установить Markdown, чтобы сделать это?

, если это невозможно, используя уценку, поэтому какие-либо альтернативы?PS: я использую стандартное приложение django 'django.contrib.markup'

, вот фактический код, который я использую в моем шаблоне:

          <div class="comment-content>
            <p>
             {% load markup %}
             {{ comment.comment|markdown:"safe" }}
            </p>
          </div>

Ответы [ 2 ]

2 голосов
/ 08 июля 2016

Вы можете использовать Отбеливатель и написать тег шаблона, чтобы удалить ненужные теги.

Например, разрешить только жирный и курсив:

@register.filter
def limit_markdown(comment):
    comment = bleach.clean(comment, tags=['b', 'i', 'em'], strip=True)
    return comment

Тогда в вашем шаблоне вы можете использовать его как:

{{ comment.comment|markdown|limit_markdown|safe }}
2 голосов
/ 16 августа 2011

Это будет зависеть от того, какой плагин уценки вы используете, есть много из быстрого поиска в Google.

Вам нужно будет либо найти документацию в Интернете для конкретной используемой вами версии, либо, возможно, просмотреть исходный код и, если это необходимо, изменить его с открытым исходным кодом. Или просто найдите другой, который позволяет эту функциональность.

редактирование: Кажется, что django использует python-markdown (http://www.freewisdom.org/projects/python-markdown/),, на первый взгляд кажется, что он не поддерживает указание только определенных опций форматирования. Однако это кажется легко расширяемым, поэтому, если вы напишите расширение, вы можете использовать его в django, например так: :

{{ string|markdown:"extension_name,extension2,etc..." }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...