Laravel 5 Modèles De Dossier
J'ai un répertoire appelé models
à l'intérieur de app/
où je place tous mes classes de modèle. Maintenant, je veux changer le répertoire où la commande suivante génère les classes générées
php artisan make:model SomeModel
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas, et si vous êtes hewing à Laravel de la version de l'univers, vous ne devriez pas. Laravel 5 fournit, et suppose, PSR-4 convention de nommage pour l'ensemble de ses fichiers de classe. Cela signifie que les modèles (et de toutes les classes) doivent être placés en fonction de leur nom complet de la classe.
Quand vous dites
Que vous êtes en train de créer un modèle avec le nom complet de
App\SomeModel
, doncartisan
crée le fichier suivant.Si vous avez dit
vous seriez de créer un modèle avec le nom complet
App\Test\SomeModel
, et Laravel serait de créer le fichier suivantDonc, c'est votre modèle du nom complet de la classe (espace de noms inclus) qui détermine l'endroit où le fichier de définition de classe est.
php artisan make:model Test\SomeModel
J'ai trouvé qu'il devrait être:
app/myspace/etc
Laravel en interne les changements de tous les/
à\` using
str_replace()`, afin que l'utilisation soit simple barre oblique " OU " double barre oblique inverse (c'est à dire échappé) devrait fonctionner, c'est votre choix!Si vous voulez créer des Modèles manuellement sur dossier spécifique. Exemple si vous voulez créer le modèle
info
dans le dossierModels
. Créer un fichier nomméinfo.php
à l'intérieur du dossier des Modèles que vous avez créé auparavant. Voici que vous devriez écrire ce type de code dansinfo.php
Bien sûr, vous pouvez également utiliser des Artisans de commande
php artisan make:model "Models\Info"
Si vous voulez appeler ce modèle
Info
vous créez une vueIl affichera tous les nom d'utilisateurs
Vous pouvez également regarder www/yourfolder/base de données/php fichier créé lors de la création du modèle.
Si vous trop paresseux et ne veulent pas de taper le mot
Models
à chaque fois, vous pouvez essayer ce mon https://github.com/bangnokia/laravel-models-folderExaminer cette question à l'aide de ce tutoriel sur un moyen https://medium.com/@codingcave/organizing-your-laravel-models-6b327db182f9.
Son une meilleure solution pour prolonger la
ModelMakeCommand
de sorte qu'au lieu dephp artisan make:model 'Test\SomeModel'
vous exécutezphp artisan make:model SomeModel
et vous aurez toujours'Test\SomeModel'
espace de noms avecSomeModel.php
dans'Test'
dossier