Форум сайта python.su
Django version 1.2.1
django-cms version 2.0
Создал свой плагин фотоальбома. Он очень простой и похож на тот, что в официальных доках.
Чтобы добавить фотоальбом на страницу, я просто выбираю в конкретной странице, в конкретном placeholder'е свой плагин и указываю какую галерею отображать.
Теперь появилась необходимость сделать раздел один Фотоальбомы (список всех фотоальбомов с 2-3 превьюшками) и Топ-10 фото (или топ-3 альбома) на каждой странице.
На данный момент вижу два решения задачи:
1. Пишем еще один плагин «GalleryPreview» и «GalleryTop» => ну а дальше все так же, как и с обычным плагином.
Что смущает: DRY идет лесом, «GalleryTop» придется добавлять в каждой странице отдельно.
2. Пишем свой отдельным app и не делаем его CMSPlugin'ом, а просто «расширяем» url представления.
Что смущает: В будущем хочется использовать этот модуль неоднократно, и встает вопрос об универсальности.
А имено, slug по которому будет доступен плагин может меняться. (В принципе, это не является проблемой, т.к. можно хранить его в базе, но тогда еще одна неприятность — конечному пользователю надо будет не только добавлять страницы в django-cms, но еще и прописывать slug и прочие настройки (темплейты и тд.) отдельно для фотоальбома)
Офлайн