Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как спроектировать сайт на Django? Где размещать бизнес логику? 
:(
    Опции темы
Ardling
Дата 6.5.2013, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 10.1.2010

Репутация: нет
Всего: нет



При создании сайтика на django возник вопрос, где именно размещать бизнес логику.

Базовый пример такой:
Создается новый обект, например команда (team), одновременно с ней должны создаваться права доступа и группа, 
права добавляются группе, создатель становится членом новой группы. Вопрос - где поместить всю эту логику?

В views помещать ее странно, как намекает само название, но с другой стороны не очень понятно как запихнуть 
логику в модель не сломав возможности генерировать по модели форму, позволяющую эту модель заполнять. 
С другой стороны контроллеров (как в MVC) я в django не обнаружил. Как поступить в данной ситуации?
PM MAIL   Вверх
bilbobagginz
Дата 7.5.2013, 06:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: нет
Всего: 317



Ardling
Терминология: рекомендую "сходить в библиотеку", и ознакомиться с "матчастью" по джанго.
Существует несколько производных паттерна MVC, если не ошибаюсь, джанго придерживается паттерна MVMV (Model, View, Model's View)
очень грубо говоря, в джанго:
  • модели находятся в файлах models.py
  • виды находятся в шаблонах, т.с. в файлах html
  • контроллеры разделены на маршрутизаторы и бизнес логику:
    • маршрутизация - urls.py
    • логика - views.py, логику рекомендуется тоже разбить:
      • во views.py стоит помещать методы обрабатывающие объект запроса (request)
      • остальной подсобный код стоит расфасовать в соотв. др. файлы, чтобы "не путались под ногами"

для второй части существует несколько подходов, самый простой - использовать приложение admin.
оно дает реально админку данных: пользователей, права, можно генерить репорты, и т.д. и т.п.
оно позволяет добавлять пользователей вручную. 


Это сообщение отредактировал(а) bilbobagginz - 7.5.2013, 06:42


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Веб-разработка и фреймворки | Следующая тема »


 




[ Время генерации скрипта: 0.0688 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.