Выделение внутренних блоков кода в Django Template Engine с помощью django-pygmentify
Я использую пакет django-pygmentify для того, чтобы выделять блоки кода в моих шаблонах Django. Дело в том, что этот пакет поддерживает только блоки кода в качестве входных данных. У меня есть поле модели, которое хранит данные в формате уценки. Эти данные могут содержать блоки кода. (используя символ ```)
Теперь, как я могу выделить его внутренние блоки кода?
Представьте, что у меня есть поле, которое содержит только исходный код. Например:
print('Hey..!')
В этом случае этот работает правильно.
{% load pygmentify_tags %}
...
{% pygmentify %}
{{post.code}}
{% endpygmentify %}
Представьте, что мое поле содержит следующее содержимое.
## Hello
This is my first step working with Python.
```python
print('Hey..!')
```
В этом случае, как я могу это реализовать??? Я могу отобразить весь этот контент с помощью {{post.body|markdown|safe}}
, но как я могу выделить эти блоки кода? Я также хочу дать всем этим блокам кода имя класса .code-block
для лучшей стилизации. Должен ли я создать пользовательский тег шаблона?
Вы можете использовать стандартный html тег <code>
следующим образом:
{% load pygmentify_tags %}
...
{% pygmentify %}
<code>
{{post.code}}
</code>
{% endpygmentify %}
Это отделит участок кода и одновременно применит к нему pygmentify.