2016-03-24 2 views
1

ldopt est un mot réservé dans yii/php pour une raison quelconque. Le tableau actuel est appelé LdOpt. Ainsi, le modèle généré est aussi appelé LdOptPourquoi gii, lors de la création de CRUD, change-t-il mon chemin d'affichage de ldopt à ld-opt?

Puis lors de la génération du CRUD je mis classe modèle à app\models\LdOpt et la recherche Classe de modèle à app\models\LdOptSearch et contrôleur app\controllers\LdOptController, laissant finalement la vue chemin vide

Mais GII change chemin de prévu ldopt à ld-opt comme vue aperçu

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 

Je me demandais pourquoi il a fait cela parce que jamais prêté attention au nom de fichier et juste qui les produit et perdu un peu de temps avec la route ?r=ldopt/index etc avant que je regarde les fichiers sur le disque.

aussi comme une expérience que j'essayé de déplacer le répertoire de retour à ldopt et il provoque une 404 non trouvée dans yu

+0

Aussi juste remarqué qu'il a fait cela avec une table appelé 'CmdtyAct' - changer le chemin de la vue en' cmdty-act'. Est-ce lié à l'affaire chameau des noms de table? – Adrian

Répondre

3

est le chemin Yii2 pour la convention du contrôleur ..

classe contrôleur Naming

Les noms de classe de contrôleur peuvent être dérivés des ID de contrôleur conformément à la procédure suivante:

Turn the fi première lettre dans chaque mot séparés par des traits d'union dans le cas supérieur . Notez que si l'ID du contrôleur contient des barres obliques, cette règle uniquement s'applique à la pièce après la dernière barre oblique dans l'ID. Supprime les traits d'union et remplace les barres obliques vers l'arrière par des barres obliques inversées. Ajoutez le suffixe Controller. Ajouter un espace de noms au contrôleur.

Voici quelques exemples, en supposant l'espace de noms de contrôleur prend les contrôleurs d'applications de valeur par défaut \:

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. 

les informations sont au-dessus de http://www.yiiframework.com/doc-2.0/guide-structure-controllers.html#controller-class-naming