2010-12-10 3 views
1

Я читал документацию mako/pylons, и мне трудно найти хорошие примеры/обсуждение интеграции нескольких приложений в одну страницу, например, если у меня было приложение для блога и приложение, которое просто выбирает случайную цитату из базы данных с удивительными цитатами. (пример тривиальный, только для экспозиции)beginner pylons/mako templating questions

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

Как я могу сделать это на лету?
Могу ли я просто создать модель, описывающую страницу, и иметь ли каждое приложение, которое она хочет называть объектами в атрибутах модели? Я просто spitballing здесь, надеясь на указатель на пример/учебник, я могу посмотреть.

Спасибо за любой совет.

ответ

2

В Django «приложения» - это компоненты, которые вы разрабатываете или выбираете, а затем настраиваете, смешиваете и сопоставляете друг с другом, чтобы получить свой последний сайт.

В «Пилонах» «приложение» относится ко всему, что вы создаете: контроллеры, модели, шаблоны, посредники, любые вспомогательные модули, документация и т. Д. Приложение Pylons - это куча кода, это Paster, Apache/mod_wsgi или любой другой веб-сервер, поддерживающий WSGI.

В Пилоны, чтобы получить, например, сообщения в блоге и случайных цитат в одной странице, вы бы:

  • Создание отдельных моделей для представления и манипулирования записей и цитаты, как myapp.model.Post, myapp.model.Quotation.
  • Создайте действие контроллера, которое запрашивает модели для получения сообщений в блоге X и отдельной цитаты, помещает их в объект данных, который будет передан в шаблон.
  • Создайте шаблон, который отображает как сообщения блога, так и цитаты на одной странице. Разумеется, этот шаблон может наследоваться от базового шаблона или включать фрагменты шаблона, поэтому вам не нужно копировать общий HTML-код во многие шаблоны.

Надеюсь, это поможет!