Главная | Архив новостей | Общение | Площадка | Примеры OpenID
Хостинг Django от «Джино»
Оглавление

Работа в автономном режиме

Замечание

Эта секция пригодится только тем разработчикам, которые будут пытаться использовать шаблонную систему в качестве компонента другого приложения. Если вы используете эту систему как часть Django, вам эта информация не понадобится.

Для работы шаблонной системы Django загружает все необходимые данные из своего конфигурационного файла, объединяя их с параметрами проекта, которые указаны в модуле, определённом в переменной среды DJANGO_SETTINGS_MODULE. Но в случае, когда требуется применить шаблонную систему отдельно от Django, использование переменной среды будет не совсем удобно.

Например, мне понадобилось создавать и отправлять своему менеджеру отчёт о проделанной работе. Менеджер мог понимать почтовые сообщения только в формате HTML, почтовое сообщение должно было быть отформатировано определённым образом. Я не мог заставить себя тратить полчаса на заполнение его «портянки». Поэтому был написан небольшой скрипт, который для генерации HTML представления сообщения использовал шаблонную систему Django. Описанное далее, учитывает мой опыт.

Для решения этой задачи потребуется использовать параметры конфигурации, которые описаны в приложении «Параметры конфигурации». Это означает, что переменная среды PYTHONPATH должна указывать на каталог, где развёрнут Django, а также то, что вам необходимо определить соответствующие параметры конфигурации. Можно, конечно, создать скрипт в котором будет определяться переменная среды DJANGO_SETTINGS_MODULE (и, соответственно, потребуется создать файл с настройками, как это происходит в Django приложении), а затем вызываться скрипт. Но лучше сделать следующее (на примере шаблонной системы):

import django
django.conf.settings.configure(TEMPLATE_DIRS = ('/home/rad/devel/cpr_report',))

Через запятую, можно определить столько параметров конфигурации, сколько надо. Среди параметров могут быть такие как TEMPLATE_DIRS (если вам потребуется использовать шаблонные загрузчики), DEFAULT_CHARSET (хотя использование UTF-8 будет достаточным) и TEMPLATE_DEBUG. Все доступные параметры описаны в приложении «Параметры конфигурации», особый интерес представляют параметры, начинающиеся с TEMPLATE_.

Небольшой пример:

import django
from django.template import Context, loader
django.conf.settings.configure(TEMPLATE_DIRS = ('/home/rad/devel/cpr_report',))

template = loader.get_template('cpr_report_template.html')
context = Context({'problems': info_problems or 'нет',
                   'plans': info_plans or 'нет',
                   'done': info_done or 'нет'})
html = template.render(context)


Увидели ошибку?
Выделите её мышкой и нажмите
Ctrl-Enter
Обработано:
1049 49 130 71

Версия книги
1.0 2.0
Версия 2.0 в процессе перевода!

Мой луч
Многообразие света

Полезное
Актуальные вакансии, Python работа для python-разработчиков.


Скачать в формате
CHM от 2 сентября

Заказать PDF файл можно через почту, чат, джаббер. Всего 2WMZ. Содержимое точно соответствует содержимому сайта.
Чем чаще заказываете — тем больше перевожу.

Русская группа

на поддержку перевода
Яндекс Яндекс.Деньги Хочу такую же кнопку
Ускорить процесс перевода!
R130494980980
Z425285133788
E112528079659
U327380922061

Книга помогла реализовать:
Проект «Мой луч»
АРМ УФМС.


Мой вебсайт стоит666 337,31 руб

© 2008-2009 Ruslan Popov @ gmail.com Powered by Django 1.1 beta 1 SVN-11114
Главная | Архив новостей | Общение | Площадка | Примеры OpenID