Учебное пособие по Django CMS App Hook - PullRequest
6 голосов
/ 13 февраля 2012

У меня есть проект Django CMS, для которого необходимо создать приложение без CMS "Achievemnets".Заказчик хочет получить полный контроль над дизайном страницы, то есть страница должна быть страницей CMS.Однако я создал конкретные представления, чтобы показать все достижения на странице, и, нажав на ссылку «подробнее», она отобразится подробно.Мне нужно перенести его на Django CMS, который я пробовал согласно методу CMS App Hook в документации Django CMS.Но ни один из них не работает.

Пожалуйста, скажите мне учебник, который хорош для изучения CMS App Hooking

1 Ответ

12 голосов
/ 13 февраля 2012

Когда вы «подключаете» URL-адреса приложения к странице Django-CMS, URL-адреса вашего приложения и функции просмотра переходят оттуда.

Скажем, URL-адрес вашей страницы Django-CMS: / достижений /

На этой странице вы хотите отобразить список достижений, которые будут получены из вашего приложения.

#your_app.urls
from django.conf.urls.defaults import url, patterns

urlpatterns = patterns('your_app.views',
    (r'^$', 'index'),
)

#your_app.views
from django.shortcuts import render

from your_app.models import Achievement

def index(request):
    achievements = Achievement.objects.all()
    return render(request, 'achievements/index.html',
        {'achievements' : achievements})

Записанный вами хук приложения Django-CMS сообщает Django-CMS, какие URL-адресаследуйте после в дополнение к странице, к которой вы подключаете свое приложение.Таким образом, Django-CMS не только будет собирать контент для страницы, но и передавать соответствующий шаблон URL вашему приложению.

Надеюсь, это имеет смысл.

...