Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 20, 2010 06:27:18

Slon
От:
Зарегистрирован: 2009-03-04
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Доброго времени суток,

Значит так: есть сайт на django-cms и есть собственное приложение(оно фонарное: делает выборку по фильтру, и возвращает список)
Хочу интегрировать одно с другим. Проще говоря мне нужно чтобы на главной заработала моя переменная которая связана с внешней моделью(не завязанной на cms).

Подскажите пожалуйста как такое реализовать.



Офлайн

#2 Окт. 20, 2010 16:29:16

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Вы случаем не путает понятия фреймворк и CMS?
Что за приложение? Питоновское или на другом языке?

Slon
на главной заработала моя переменная которая связана с внешней моделью
Вот эта фраза мне совсем непонятна… Что вы понимаете под переменной? Результат работы вашего стороннего приложения?

Как возможные решения это использовать сырые запросы к БД или же считывать стандартными питоновскими методами вывод вашего приложения и уже передавать результат обычным способом через контекст.



Офлайн

#3 Окт. 20, 2010 23:35:48

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Что конкретно Вы хотите сделать? Вывести что-то на главной? Изменить её поведение?

Офлайн

#4 Окт. 21, 2010 02:55:12

Slon
От:
Зарегистрирован: 2009-03-04
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Чет я намудрил с описанием. Вот что нужно:

Есть отдельное приложение(manage.py startapp news), у него есть модель и вот такое представление:

def news_compact(request):
news_list = news.objects.filter(news_published = 1)
return render_to_response('news.html', {'news_list': news_list,},)]
Мне нужно в основной шаблон подгружать инклудом news.html. Проблема в том, что я не знаю как заставить работать мой тег, news_list в шаблоне.

пс: сайт работает на django-cms



Офлайн

#5 Окт. 21, 2010 04:05:05

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Используйте {{ news.news_compact|safe }}



Офлайн

#6 Окт. 21, 2010 04:53:51

Slon
От:
Зарегистрирован: 2009-03-04
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

А как оно должно работать? Нет никакой реакции на эту переменную



Отредактировано (Окт. 21, 2010 04:55:47)

Офлайн

#7 Окт. 21, 2010 08:59:04

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Ошибка вышла, решение со сейфом вам не подходит. (я подумал что та функция была методом модели, а не представлением)

Насчёт же включения инклудом news.html, единственное что инклуд делает это “передаёт” текст шаблона из указанного файла, а контекст вы должны отдавать сами, т.е. в основном представлении тоже должно формироваться news_list.



Офлайн

#8 Окт. 21, 2010 10:50:39

Slon
От:
Зарегистрирован: 2009-03-04
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

В этом как раз и проблема, всей логикой заведует django-cms. А как в эту логику влезть, я не пойму.



Офлайн

#9 Окт. 21, 2010 11:05:38

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

Прочитайте следующие вещи:
http://ru.wikipedia.org/wiki/Система_управления_содержимым
http://docs.djangoproject.com/en/dev/ref/templates/builtins/#include

Во-первых, почему-то под django-cms у меня такое ощущение вы понимаете шаблонную сстему Джанги. (поправьте меня если я не прав или заблуждаюсь)
Во-вторых, использование include не избавляет от необходимости передавать контекст, т.е. воспринимайте это словно делается копипаст куска шаблона в обрабатываемый шаблон и не более того.



Отредактировано (Окт. 21, 2010 11:09:17)

Офлайн

#10 Окт. 21, 2010 15:14:43

Slon
От:
Зарегистрирован: 2009-03-04
Сообщения: 56
Репутация: +  0  -
Профиль   Отправить e-mail  

Dgango-cms и свои теги в шаблонах

1. Вы заблуждаетесь
2. Я понимаю как работает include.

Сейчас опишу всю картину в общем, чтобы было понятно где что:
Сайт сделан на django-cms. На главной есть модуль, новости, который выводит 3 последние новости. Ну как выводит, он инклудит news.html в котором в дивах прописаны руками новости. Также есть отдельная вкладка новости, где выводятся те же новости, но с картинками и т.п.(уже через cms, но и там через ж..) Это как то не по феншую лазить в шаблон и писать руками там. Я сделал отдельное от cms представление, чтобы все было красиво. В идеале, хочу сделать свое приложение новостей, которое позволит загружать изображения, будет иметь поля аннотации и самой новости, rss фид. Во общем все как у людей.

Я сделал представление, что выложил выше. Теперь мне нужно его связать с url'ом главной странницы. Но все урлы перехватывает, и обрабатывает django-cms:

(r'^', include('cms.urls')),
Тут и проблема.

Я в перспективе хочу уйти от django-cms, так как проект по моему умер уже.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version