В предыдущем посте было рассказано, как создать простейший проект на GAE + Django. Сейчас давайте попробуем подключить к проекту шаблоны Django и поддержку статических файлов — таблиц стилей, скриптов и картинок.
Наш Django проект будет называтся dvk, и содержать приложение main. В папке приложения создаем каталог для шаблонов templates:
Чтобы среда исполнения смогла найти файлы шаблонов, нужно прописать путь к папке шаблонов в файле настроек проекта settings.py.
Теперь можно создать файл шаблона main.html в папке шаблонов. Наш шаблон не будет делать ничего сверх полезного :) Просто скажем браузеру «Hello world!»
Для вывода страницы создадим процедуру-контроллер в файле views.py и привяжем её к обработке запроса главной страницы сайта в urls.py
Теперь можно протестировать наше приложение — dev_appserver.py dvk
Откройте браузер с адресом 127.0.0.1:8080/ и у вас отобразится «Hello world!» :-)
Чтобы Google App Engine обрабатывал статические файлы, нужно в файле настроек GAE приложения включить в секцию handlers параметр static_dir:
Параметр url указывает, по какому адресу будут доступны файлы, а значение параметра static_dir — имя и расположение папки. В нашем примере она располагается в корне проекта и имеет имя static. Теперь в шаблонах можно обращаться к статическим файлам, например для загрузки таблицы стилей:
link href="/static/main.css" type=«text/css» rel=«stylesheet»
или рисунка
img src="/static/logo.gif"
Использованные материалы:
Django on Google App Engine: Templates and static files
Google App Engine — Configuring an App
Кросс-пост с моего блога
Наш Django проект будет называтся dvk, и содержать приложение main. В папке приложения создаем каталог для шаблонов templates:
dvk/
main.py
app.yaml
dvk/
manage.py
settings.py
urls.py
main/
__init__.py
models.py
views.py
templates/
Чтобы среда исполнения смогла найти файлы шаблонов, нужно прописать путь к папке шаблонов в файле настроек проекта settings.py.
import os
ROOT_PATH = os.path.dirname(__file__)
TEMPLATE_DIRS = (
ROOT_PATH + "/main/templates",
)
Теперь можно создать файл шаблона main.html в папке шаблонов. Наш шаблон не будет делать ничего сверх полезного :) Просто скажем браузеру «Hello world!»
Hello world!
Для вывода страницы создадим процедуру-контроллер в файле views.py и привяжем её к обработке запроса главной страницы сайта в urls.py
#dvk/dvk/main/views.py
from django.shortcuts import render_to_response
def index(request):
return render_to_response(«main.html»)
#dvk/dvk/urls.py
from django.conf.urls.defaults import *
urlpatterns = patterns("",
(r"^$", «dvk.main.views.index»),
)
Теперь можно протестировать наше приложение — dev_appserver.py dvk
Откройте браузер с адресом 127.0.0.1:8080/ и у вас отобразится «Hello world!» :-)
Чтобы Google App Engine обрабатывал статические файлы, нужно в файле настроек GAE приложения включить в секцию handlers параметр static_dir:
application: dvk
version: 1
runtime: python
api_version: 1
…
handlers:
— url: /static
static_dir: static
...
Параметр url указывает, по какому адресу будут доступны файлы, а значение параметра static_dir — имя и расположение папки. В нашем примере она располагается в корне проекта и имеет имя static. Теперь в шаблонах можно обращаться к статическим файлам, например для загрузки таблицы стилей:
link href="/static/main.css" type=«text/css» rel=«stylesheet»
или рисунка
img src="/static/logo.gif"
Использованные материалы:
Django on Google App Engine: Templates and static files
Google App Engine — Configuring an App
Кросс-пост с моего блога