2012-01-29 2 views
0

Где должен размещаться промежуточный код? (То, что ins't просто хранения/извлечения данных из БД, ни обработки запросов/просмотров)MVC - Codeigniter

Например,

Скажем, у меня есть Listings и я создаю функции CRUD в модели. Этим Listings могут потребоваться более сложные задачи, такие как приостановка и возобновление, что может потребовать некоторых вычислений времени, установки ошибок и т. Д. Если они помещаются в модель или я должен обернуть простую модель в библиотеке и использовать ее как посредника для модель?

В настоящее время я думаю об использовании драйверов/библиотек и поддержании моделей довольно просто, за исключением некоторых динамических фильтров SELECT. Я немного запутался, так как я предполагаю, что мне, вероятно, придется перепроверять переменные, зависимости и т. Д. В модели после этого в библиотеке, да?

Я бы, скорее всего, все хлюпал все вместе в модели и проверял один раз или отдельно и дважды проверял?

ответ

3

Общее эмпирическое правило:

1) Выполните все бизнес-логики в моделях.

2) Выполнение действий, таких как копытник в контроллерах. (направление пользователей на новые представления по результатам деятельности.)

3) Выполнять только презентационную логику в представлениях.

Все, что вы хотели бы сделать, считалось бы «посредником», могло находиться в библиотеке или помощнике.

Следует отметить, что если вы пишете библиотеку, не забудьте получить экземпляр текущего объекта CI в своем классе, чтобы вы могли использовать его со своими внутренними методами класса.

class Your_lib { 
    $CI =& get_instance(); 
    ... 
} 

Надеюсь, что это поможет.

 Смежные вопросы

  • Нет связанных вопросов^_^