Автор оригинала: Adi Chirilov – Sm0ke.
Привет Кодер,
Эта статья представляет собой краткое введение в Jinja2 , современный язык шаблонов, используемый программистами Python в таких фреймворках, как Flask, Bottle, опционально в Django версии 1.8. В статье также приводится бесплатный актив – AdminLTE dashboard design, выпущенный по лицензии MIT. Кодовая база активно поддерживается через Github (issues tracker) и Discord – 24/7 LIVE service. Спасибо за чтение! Дайте мне знать ваши мысли в комментариях!
AdminLTE Ссылки – для быстрых бегунов
- AdminLTE – Jinja Template – Sources
- AdminLTE – Jinja Demo – что-то нажать
- Больше стартеров закодировано поверх AdminLTE design
AdminLTE Дизайн
AdminLTE -это культовый дизайн панели мониторинга, созданный компанией ColorLib и активно поддерживаемый более чем 150 энтузиастами с открытым исходным кодом. Проект имеет 35 тысяч звезд Github и 15 тысяч вилок и может быть загружен непосредственно с Github по лицензии MIT.
Примечания поставщика (ColorLib) – AdminLTE-это полностью адаптивный шаблон администрирования. На основе фреймворка Bootstrap 4.4, а также плагина JS/jQuery. Очень настраиваемый и простой в использовании. Подходит для многих разрешений экрана от небольших мобильных устройств до больших настольных компьютеров.
Что такое Джинджа
Jinja2-это шаблонный движок Python, используемый для генерации HTML или XML, возвращаемых пользователю через HTTP-ответ.
Для тех, кто раньше не сталкивался с языком шаблонов, такие языки по существу содержат переменные, а также некоторую логику программирования, которая при вычислении (или отображении в HTML) заменяется фактическими значениями.
Зачем нам Джинджа?
Sandboxed Execution – Это защищенный фреймворк для автоматизации тестирования программ, поведение которых неизвестно и должно быть исследовано.
HTML Escaping – Jinja2 имеет мощный автоматический HTML Escaping, который помогает предотвратить межсайтовый скриптинг (XSS-атаку). Существуют специальные символы, такие как>,<, & и т. Д. которые несут особые значения в шаблонах. Поэтому, если вы хотите использовать их в качестве обычного текста в своих документах, замените их сущностями. Если этого не сделать, это может привести к XSS-атаке.
Наследование шаблонов – Эта функция помогает нам создавать новые страницы, начиная с базового шаблона, который мы наследуем общей структурой.
Как получить Jinja2
Чтобы начать играть с ним, просто откройте терминал и введите:
$ pip install jinja2
Джинджа в действии
Для простой замены во время выполнения мы можем использовать следующий фрагмент кода:
>>> from jinja2 import Template >>> t = Template("Hello {{ token }}!") >>> t.render(token="Jinja2") u'Hello Jinja2!'
AdminLTE – шаблон Jinja2
В случае, если этот проект звучит как что-то полезное для ваших будущих проектов, мы можем попробовать построить проект с помощью консоли и нескольких команд.
$ # Clone the sources $ git clone https://github.com/app-generator/jinja2-adminlte.git $ cd jinja2-adminlte $ $ # Virtualenv set up (Unix based systems) $ virtualenv env $ source env/bin/activate $ $ # Install requirements $ pip3 install -r requirements.txt $ $ # Set the FLASK_APP environment variable $ (Unix/Mac) export FLASK_APP=run.py $ (Windows) set FLASK_APP=run.py $ (Powershell) $env:FLASK_APP = ".\run.py" $ $ $ # Run the Jinja Template $ flask run $ $ # Access the UI in browser: http://127.0.0.1:5000/
Если все пойдет хорошо, мы увидим, что проект работает в браузере, как и ЖИВАЯ демонстрация – AdminLTE – Jinja2 Demo
AdminLTE – Jinja2, страница виджетов
AdminLTE – Jinja2, Страница входа в систему
AdminLTE – Jinja2, Страница календаря
AdminLTE – Jinja2, Страница регистрации
Спасибо за чтение! Для получения дополнительной информации, пожалуйста, обратитесь: