Package: midnight
CMS на django фреймворке для быстрого развертывания web проектовСистемные требованияPython 3.4PipBowerPostgresql 9.3 и вышеУстановкаПрописать настройки соединения с базой данных в файлеmidnight/env/dev/settings_local.py.
Делее выполнить следующие команды в корне проекта:$ cp midnight/env/dev/settings_local.py midnight/settings_local.py
$ pip install -e .
$ bower install
$ python manage.py migrate
$ python manage.py loaddata data
$ python manage.py collectstaticСоздание тем оформленияШаблоны тем должны располагаться вmidnight/templates/theme_name. Статические файлы вwww/themes/theme_name.В состав входят следующие модули:Главный модульВключает в себя следующие компоненты:Текстовые страницыМенюВключаемые областиФотогалереяКомментарии к страницамДоступные настройкиMIDNIGHT_MAIN_ADMIN_EMAIL =‘admin@example.com’MIDNIGHT_MAIN_MAIL_FROM =‘admin@example.com’MIDNIGHT_MAIN_PAGE_TPL_CHOICES = models.Page.PAGE_TPL_CHOICESДоступные тегиПодключение библиотеки тегов:{% load midnight_main %}Подключение меню.Принимает символьный код меню, уровень вложенности и атрибуты обертывающего тега:{% show_menu "menu_slug" 2 class='menu-class' %}Подключение фотогалереи.Принимает символьный код фотогалереи, размер миниатюр, режим кропа и атрибуты обертывающего тега:{% show_gallery "gallery-slug" "150x110" "center" class='gallery-class' %}Подключение включаемой области.Принимает символьный код включаемой области:{% show_area "area_slug" %}Подключение ajax формы.Принимает имя класса формы, имя представления обрабатывающего форму,
идентификатор оборачевающего тега, признак необходимости открывать ворму в fancybox (modal).
В примере использована форма обратной связи входящая в состав модуля:{% ajax_form 'midnight_main.forms.Feedback' 'midnight_main:page_feedback' tag_id='feedback_form' modal=True %}Отображение панели пользователя:{% user_info %}Отображение хлебных крошекПринимает список хлебных крошек ([{‘label’: ‘Crumb label’, ‘url’: ‘/crumb-url/’}, … ]) и атрибуты оборачивающего тега:{% breadcrumbs crumbs class='breadcrumb' %}Форма поиска:{% search_simple_form %}НовостиПозволяет создать новостной раздел с возможностью рубрикации.Доступные настройкиMIDNIGHT_NEWS_PAGE_SIZE = 20Доступные тегиПодключение библиотеки тегов:{% load midnight_news %}Список последних новостей.Принимает символьный код категории новостей, количество выводимых новостей, атрибуты оборачивающего тега:{% show_news_line 'news_section_slug' 3 class='news-class' %}Баннерный модульПозволяет размещеть баннеры на страницах сайта. Поддерживает следующие форматы:JPGGIFPNGSWFДоступные тегиПодключение библиотеки тегов:{% load midnight_banners %}Отображение одного баннера. Принимает символьный код баннерного места. Отображает выбранный случайным образом баннер из указанного баннерного места:{% one_banner 'place_slug' %}Отображение списка баннеров. Принимает символьный код баннерного места, атрибуты обрачивающего тега:{% list_banners 'place_slug' class='banners-class' %}КаталогПозволяет организовать каталог товаров с иерархической рубрикацией и настраиваемым набором свойств.Доступные параметрыMIDNIGHT_CATALOG_PAGE_SIZE = 20MIDNIGHT_CATALOG_PREFETCH_PARAMS = False # Жадная загрузка свойств товаров при отображении в спискеMIDNIGHT_CATALOG_CURRENCY = ‘руб’MIDNIGHT_CATALOG_DECIMALS = 2Доступные тегиПодключение библиотеки тегов:{% load midnight_catalog %}Фильтр валюты currency.:{{ item.price | currency }}Отображение категорий каталога.Отображает иерархию категорий каталога. Принимает идентификатор родительской категории, уровень вложенности и атрибуты оборачивающего тега.
Если идентификатор родительской категории не задан, отображается вся иерархия:{% catalog_sections 'section_slug' 2 class='catalog-class' %}