Модульная структура в проекте с использованием фреймворка Laravel. Часть 2
Вставка
- Опубліковано 26 жов 2019
- Разработка веб-приложения на PHP. Посмотрите уроки: webformyself.com/minikurs/php...
Исходники к уроку тут: webformyself.com/modulnaya-st...
В прошлом уроке Вы увидели, как добавить поддержку модульной структуры в приложение, написанное с использованием фреймворка Laravel. Но, согласитесь, что каждый раз создавать требуемый набор каталогов и файлов не совсем удобно. Поэтому в данном видео будет реализована консольная команда, при помощи которой можно будет генерировать каркас для будущего модуля.
Фрейморк Laravel предоставляет разработчикам довольно удобный механизм по созданию и редактированию консольных команд. Соответственно, в текущем уроке мы с Вами напишем команду, которая по названию модуля будет создавать отдельную папку в каталоге модулей с требуемым набором подпапок. При этом будет создаваться контроллер типа resource с заранее подготовленными методами. Так же будет формироваться модель и миграции для нее. Конечно же будет генерироваться отдельный файл с маршрутами для обработки запросов пользователей.
Создал такую систему на 8 версии, но я начал создать в Public (вместо Admin), создал папки, но когда попытался вручную создать контроллер через создание класса с указанием namespace, то оно выдавало ошибку и блокировало кнопку для подтверждения создания файла - не помню точную ошибку, но суть в том что типа в самой система уже есть папка public (в корне) - и это при том, что я как и в примере создавал все в app/Modules (и там Admin + Public).
Решил проблему просто взяв другое понятное название для папки Public.
А в папке Admin работает нормально. Интересно это только на 8 версии или не? потому что у меня в папке app была еще папка Models в которую создавались модели.
А вообще, спасибо за уроки, интересно и достаточно понятно
Как-то странно у меня создается модель AdminBlog! В чем может быть проблема?
А вот когда прописал команду с 2 слешами то все получилось как положено
php artisan make:module Admin\\Blog --all
php artisan make module Admin/Blog и все получится
А главная страница ? как будет открываться ?
при создании директории для контроллера выставляются права 777 да еще и рекурсивно. так лучше не делать
хотя похоже что 7 ларавел все равно 775 выставляет права