Здравствуйте. Читаю цикл статей по созданию компонента: https://help.joomla.org/proxy/?opti.../tutorial/Developing_an_MVC_Component/Part_09 Объясните мне зачем тут Код (PHP): <?php // No direct access to this file defined('_JEXEC') or die; jimport('joomla.application.component.controlleradmin'); class HelloWorldControllerHelloWorlds extends JControllerAdmin { public function getModel($name = 'HelloWorld', $prefix = 'HelloWorldModel') { $model = parent::getModel($name, $prefix, array('ignore_request' => true)); return $model; } } Используем модель HelloWorldModelHelloWorld вместо HelloWorldModelHelloWorlds В статье конечно есть объяснение, типа это сделано для того чтобы не дублировать функционал в два контроллера. Но про какой функционал идет речь? Если посмотреть на представление HelloWorldViewHelloWorlds то все что ему нужно от модели это два метода getItem и getPagination и эти методы реализованы в JModelList от которого наследована модель HelloWorldModelHelloWorlds. Т.е. все и так должно работать и если закомментировать Код (PHP): public function getModel($name = 'HelloWorld', $prefix = 'HelloWorldModel') { $model = parent::getModel($name, $prefix, array('ignore_request' => true)); return $model; } То все будет работать. Объясните мне пожалуйста. Спасибо.
все модели и контроллеры которые ты прописываешь у себя в компоненте заменяют собой стандартные (которые есть в ядре) это сделано для того что бы можно было произвести какие то отличные от стандартных действия по работе с контентом в принципе, если у тебя компонент похож на com_content то можно обойтись только таблицами в БД и одним стартовым файлом и одним файлом шаблона default все остальные модели, контроллеры, вьюеры могут быть пропущены
@like-nix, следуя логике Joomla MVC (ну и здравому смыслу): HelloWorldsModel - получает из базы инфу для формирования группы элементов (например, все материалы категории); HelloWorldModel - получает из базы инфу по одному конкретному элементу (например, страница материала категории). Аналогично с контроллерами, видами и шаблонами.