#codeigniter
#codeigniter
Вопрос:
Я изучаю CodeIgniter. Мне интересно, какой из них лучше всего использовать для получения данных POST формы при обновлении базы данных: из контроллера или из модели?
Если мы получаем данные POST в контроллере, то нам нужно передать данные в качестве аргументов функции Model, но функция Model может использоваться в других формах. Если мы получим данные POST непосредственно в модели, то мы можем исключить этап передачи аргумента, но это ограничено некоторыми конкретными формами.
Какой из них является наилучшей практикой?
Спасибо.
Ответ №1:
Лучше всего обрабатывать ваш код представления (ответы формы и т.д.) В ваших контроллерах, А затем передавать все, что вам нужно, в качестве параметров вашим моделям.
Это обеспечивает максимальное повторное использование, поскольку ваша модель (и ее методы) могут быть использованы повторно, если, например, у вас другое представление и контроллеру требуется эта модель, которая обрабатывает формы по-разному (например, API).
Ответ №2:
Наилучшей практикой было бы выполнять всю обработку данных в контроллере и на уровне обслуживания, а затем передавать только требуемые данные либо в модальный, либо в Представление. Таким образом, у вас есть контролируемый поток информации и четкое разделение между концепциями. Объекты модели должны использоваться только как объекты данных через ORM, и ничего более. Контроллер должен содержать всю бизнес-логику.