Intereting Posts
PHP – самый быстрый способ преобразования массива 2d в 3d-массив, который сгруппирован по определенному значению Как определить, связана ли связанная база данных с MariaDB или MySQL? Не найден маршрут для «GET / user / register»: метод не разрешен (разрешить: POST) Доступ к переменной из области действия другой функции? Кнопка «Отправить» не работает в форме «Bootstrap» Регулярное выражение для соответствия запятой не между символами группировки PHPUnit не продолжает проверку после ожидания исключения Являются ли одинарные заявления или заявления без привязок плохой практикой? Таймер обратного отсчета Javascript / PHP, который обновляется каждую секунду и учитывается до определенной даты и времени Прикрепление NetBeans к XDebug на XAMPP Webservice не удается Возможно, транзакция PDO через несколько баз данных? Как избежать & в XML? Как конвертировать время сервера в локальное время? INSERT с PDO $ _POST не работает php простая проблема с XML-анализом на недопустимые теги

Модель – Вид – Новая перспектива контроллера

Доброе утро всем. Недавно я прочитал статью о шаблоне mvc, в которой говорится, что большинство инфраструктур php внедрили шаблон mvc неправильно. php master mvc pattern part 1 php master mvc pattern part 2 Ну после прочтения этого и рассмотрения этой реализации возник вопрос. Как бы вы назвали в образе метод, называемый в модели? То, что я пытаюсь сказать, это. Это часть кода из статьи.

<?php $model = $_GET['model']; $view = $_GET['view']; $controller = $_GET['controller']; $action = $_GET['action']; if (!(empty($model) || empty($view) || empty($controller) || empty($action))) { $m = new $model(); $c = new $controller($m, $action); $v = new $view($m); echo $v->output(); } 

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

 <?php class Index extends Controller { public function __construct(IndexModel $model, $action) { $this->model = $model; } public function someAction($id) { $this->model->getData($id); } } class Index extends View { public function __construct(IndexModel $model, $action) { $this->model = $model; } public function someAction() { $this->model->getData(); } } class Index extends Model { public function __construct() { //Some Code Here } public function someAction() { // Inserting Data into database. } } 

Как вы можете видеть, мы вызываем тот же метод как в контроллере, так и для получения данных из базы данных. Но если я правильно знаю, представление должно позаботиться о работе контроллера, поэтому $ id не будет прав, чтобы снова проанализировать его в представлении или что-то в этом роде. Тогда как это можно решить?