Реализация ООП PHP с AJAX, MVC? - PullRequest
       3

Реализация ООП PHP с AJAX, MVC?

4 голосов
/ 17 сентября 2011

Я новичок в парадигме ООП (и AJAX / jQuery), но хотел бы создать базовый сайт, использующий архитектуру MVC на PHP, с функциональностью AJAX.Я составил краткую схему того, как я сейчас «понимаю» архитектуру.

Предположительно, когда используется AJAX, который выступает в качестве контроллера для непосредственного взаимодействия с моделью для получения необходимой функциональности?Имена файлов, которые я добавил, просто для того, чтобы дать вам представление о том, что, по моему мнению, должно быть включено.например, index.php будет шаблоном html / css с включением в модули в соответствующих местах (какими бы они ни были) - news.php, navigation.php и т. д. database.php / pager.php может содержать классы и расширенные классыкоторый я создаю для разбивки на страницы или подключения / запроса к базе данных, я изо всех сил пытаюсь понять, каким может быть компонент контроллера - он наверняка окажется «вторым внутренним представлением» - вызовом классов из модели для отправкик представлению?

Я, вероятно, хорошо описал здесь свою путаницу - что должно быть в представлении, контроллере и модели ... Является ли функциональность AJAX технически другим контроллером?Любая диаграмма, похожая на мою, была бы чрезвычайно полезной.

Ответы [ 3 ]

8 голосов
/ 17 сентября 2011

ОК, поэтому AJAX - это метод транспорта, а не приложение, такое как модель или контроллер.

Ваш клиент будет связывать через AJAX с одним или несколькими контроллерами.

Эти контроллеры используют или вызывают модели для обработки различного рода задач.

Затем либо контроллер, либо модель отвечает на запрос сообщением в удобном для транспорта формате (JSON, YAML, XML) илис представлением (фрагмент HTML).

Контроллер обрабатывает запросы, это означает, что он получает начальный клиентский ввод.В зависимости от ситуации этот ввод должен быть отформатирован, нормализован, изменен или преобразован каким-либо образом перед использованием в вашем приложении.

Затем контроллер использует или вызывает модель;это означает, что он либо работает с самой бизнес-логикой (старый стиль) и использует модель для доступа к источникам данных, либо полностью передает основной рабочий процесс вашего приложения модели (новый стиль).

Модельв первом случае абстрагирует постоянный объект хранения (например, базу данных).В современном дизайне приложений он также выполняет основную бизнес-логику вашего приложения.

0 голосов
/ 17 августа 2013

Есть один способ увидеть это.

  • Ajax - это средство передачи данных между компонентами MVC, такими как HTTP POST. В этом отношении он не отображается в шаблоне MVC.
  • Фактическое отображение в формате JSON также можно рассматривать как представление, если оно фактически используется для отображения данных.

Из этого вы сможете прийти к своим собственным выводам.

0 голосов
/ 17 сентября 2011

Вы можете использовать лучшую архитектуру MVC PHP под названием " YII ". Более подробную информацию можно получить здесь http://www.yiiframework.com/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...