Почему gii при создании CRUD меняет мой путь просмотра с ldopt на ld-opt?
Является ли ldopt зарезервированным словом в yii/php по какой-то причине.
Фактическая таблица называется LdOpt
, Таким образом, созданная модель также называется LdOpt
Затем при генерации CRUD я устанавливаю класс модели в app\models\LdOpt
и класс поиска модели для app\models\LdOptSearch
и контроллер для app\controllers\LdOptController
в конце концов оставляя путь просмотра пустым
Но GII меняет путь от ожидаемого ldopt
в ld-opt
как в режиме предварительного просмотра
Code File Action
controllers /LdOptController.php create
models /LdOptSearch.php create
views /ld-opt/_form.php create
views /ld-opt/_search.php create
views /ld-opt/create.php create
views /ld-opt/index.php create
views /ld-opt/update.php create
views /ld-opt/view.php create
Просто интересно, почему он это сделал, потому что никогда не обращал внимания на имя файла, а просто генерировал их и тратил время на маршрут ?r=ldopt/index
и т.д., прежде чем я посмотрел на файлы на диске.
Также в качестве эксперимента я попытался переместить каталог обратно в ldopt
и это вызывает 404 не найден в YII
1 ответ
Имя пути Yii2 для соглашения контроллера.
Наименование класса контроллера
Имена классов контроллеров могут быть получены из идентификаторов контроллеров в соответствии со следующей процедурой:
Превратите первую букву в каждом слове, разделенном дефисами, в верхний регистр. Обратите внимание, что если идентификатор контроллера содержит косые черты, это правило применяется только к детали после последней косой черты в идентификаторе. Удалите дефисы и замените все косые черты на обратные. Добавьте суффикс Контроллер. Предварительно добавьте пространство имен контроллера.
Ниже приведены некоторые примеры, если предположить, что пространство имен контроллера принимает значение по умолчанию app\controllers:
article becomes app\controllers\ArticleController; post-comment becomes app\controllers\PostCommentController; admin/post-comment becomes app\controllers\admin\PostCommentController; adminPanels/post-comment becomes app\controllers\adminPanels\PostCommentController.
приведенная выше информация взята с http://www.yiiframework.com/doc-2.0/guide-structure-controllers.html