php artisan migrate: make create_mytable schlägt fehl: "migrate: make" ist nicht definiert

72

Wenn Sie den folgenden Befehl im Stammverzeichnis meiner Laravel 5-Anwendung ausführen,

php artisan migrate:make create_mytable

Ich erhalte folgende Fehlermeldung:

[InvalidArgumentException]              
Command "migrate:make" is not defined.  
Did you mean one of these?              
migrate:reset                       
migrate:refresh                     
migrate:status                      
migrate:rollback                    
migrate:install                     
migrate   

Gibt es eine neue Möglichkeit, Migrationen in Laravel 5 zu starten?

Jack
quelle
3
Ich denke, es wäre schön, die beste Antwort zu wählen. Ich glaube, alle 3 Antworten sind richtig
UX Labs

Antworten:

85

Die Syntax wurde in geändert php artisan make:migration.

Hier sind die verfügbaren make-Befehle.

make:auth                    Create auth classes for the application
make:console                 Create a new Artisan command
make:controller              Create a new resource controller class
make:filter                  Create a new route filter class
make:migration               Create a new migration file
make:provider                Create a new service provider class
make:request                 Create a new form request class

Sie können eine vollständige Liste der Befehle anzeigen, indem Sie ausführen php artisan list


Möglicherweise interessieren Sie sich auch für das Laravel Generators-Paket .

Um es mit Laravel 5 verwenden zu können, müssen Sie es benötigen "way/generators": "~3.0"

Es gibt Ihnen die folgenden zusätzlichen Befehle:

generate:controller          Generate a controller
generate:migration           Generate a new migration
generate:model               Generate a model
generate:pivot               Generate a pivot table
generate:publish-templates   Copy generator templates for user modification
generate:resource            Generate a new resource
generate:scaffold            Scaffold a new resource (with boilerplate)
generate:seed                Generate a database table seeder
generate:view                Generate a view
Andy Fleming
quelle
4
hinterhältige Laravel ändern immer die Regeln :) nicht gut, wenn Sie versuchen, es zu lernen
Vasko
41

Ja, in Laravel 5 wird dies verschoben

php artisan make:migration (followed by the usual parameters you would have used before)
Jack
quelle
22

Der handwerkliche Befehl zum Erstellen von Migrationen in Laravel 5 lautet:

php artisan make:migration create_my_table --create="my_table"

Für eine Liste aller verfügbaren Argumente können Sie dem handwerklichen Befehl "Hilfe" voranstellen :

php artisan help make:migration

Mithredate
quelle
3

Ja. Laravel 5 Upwords PHP-Befehle wurden aktualisiert. Versuchen Sie und sehen Sie unten.

php artisan make:migration create_mytable

Das hat bei mir funktioniert.

Lish
quelle
3

Ich finde es schön zu tippen php artisan. Es sollte die Liste der handwerklichen Befehle ausgeben:

Available commands:
  clear-compiled       Remove the compiled class file
  down                 Put the application into maintenance mode
  env                  Display the current framework environment
  help                 Displays help for a command
  inspire              Display an inspiring quote
  list                 Lists commands
  migrate              Run the database migrations
  optimize             Optimize the framework for better performance
  serve                Serve the application on the PHP development server
  tinker               Interact with your application
  up                   Bring the application out of maintenance mode
 app
  app:name             Set the application namespace
 auth
  auth:clear-resets    Flush expired password reset tokens
 cache
  cache:clear          Flush the application cache
  cache:forget         Remove an item from the cache
  cache:table          Create a migration for the cache database table
 config
  config:cache         Create a cache file for faster configuration loading
  config:clear         Remove the configuration cache file
 db
  db:seed              Seed the database with records
 event
  event:generate       Generate the missing events and listeners based on registration
 key
  key:generate         Set the application key
 make
  make:auth            Scaffold basic login and registration views and routes
  make:command         Create a new Artisan command
  make:controller      Create a new controller class
  make:event           Create a new event class
  make:job             Create a new job class
  make:listener        Create a new event listener class
  make:mail            Create a new email class
  make:middleware      Create a new middleware class
  make:migration       Create a new migration file
  make:model           Create a new Eloquent model class
  make:notification    Create a new notification class
  make:policy          Create a new policy class
  make:provider        Create a new service provider class
  make:request         Create a new form request class
  make:seeder          Create a new seeder class
  make:test            Create a new test class
 migrate
  migrate:install      Create the migration repository
  migrate:refresh      Reset and re-run all migrations
  migrate:reset        Rollback all database migrations
  migrate:rollback     Rollback the last database migration
  migrate:status       Show the status of each migration
 notifications
  notifications:table  Create a migration for the notifications table
 queue
  queue:failed         List all of the failed queue jobs
  queue:failed-table   Create a migration for the failed queue jobs database table
  queue:flush          Flush all of the failed queue jobs
  queue:forget         Delete a failed queue job
  queue:listen         Listen to a given queue
  queue:restart        Restart queue worker daemons after their current job
  queue:retry          Retry a failed queue job
  queue:table          Create a migration for the queue jobs database table
  queue:work           Start processing jobs on the queue as a daemon
 route
  route:cache          Create a route cache file for faster route registration
  route:clear          Remove the route cache file
  route:list           List all registered routes
 schedule
  schedule:run         Run the scheduled commands
 session
  session:table        Create a migration for the session database table
 storage
  storage:link         Create a symbolic link from "public/storage" to "storage/app/public"
 vendor
  vendor:publish       Publish any publishable assets from vendor packages
 view
  view:clear           Clear all compiled view files

Dies ist eine wertvolle Liste. Um eine Migrationsdatei zu erstellen, müssen Sie Folgendes eingeben:

php artisan make:migration

Frühere Versionen von Laravel (wie Laravel 4) hatten eine andere Syntax zum Erstellen einer Migrationsdatei.

php artisan migrate:make 

Es hat Sinn, weil die Liste der Dinge, die Sie machen können, in Laravel 5 groß ist:

make:auth            Scaffold basic login and registration views and routes
make:command         Create a new Artisan command
make:controller      Create a new controller class
make:event           Create a new event class
make:job             Create a new job class
make:listener        Create a new event listener class
make:mail            Create a new email class
make:middleware      Create a new middleware class
make:migration       Create a new migration file
make:model           Create a new Eloquent model class
make:notification    Create a new notification class
make:policy          Create a new policy class
make:provider        Create a new service provider class
make:request         Create a new form request class
make:seeder          Create a new seeder class
make:test            Create a new test class
Prosti
quelle
1
Dies ist der größte PiTA mit Laravel imo. Wenn Sie dies googeln, sagt fast jedes Dokument, dass make verwendet werden soll, und jetzt ist alles falsch. Ich stoße immer wieder mit Laravel auf so etwas. Auch zwischen Nebenversionen. Jedes Ding mag klein erscheinen, aber es führt zu einer Menge Zeitverschwendung beim Versuch, die richtigen Befehle zu finden. Sie verschieben ständig Klassen, ändern Namen und fügen Klassenverzeichnisse hinzu. Das ist ein noch größerer PiTA, um den Überblick zu behalten.
Fred
@fred In der Tat ist Konsistenz und solide Dokumentation der Schlüssel zu einem großartigen Framework / einer großartigen Sprache. Leider scheitern viele Sprachen / Frameworks daran.
Bart
Danke, du sparst meine Zeit! @prosti
Subhash Patel
0

Liste der Befehle, die mit PHP Artisan in Laravel5 verfügbar sind

key:generate
make:auth
make:console
make:controller
make:filter
make:migration
make:provider
make:request
migrate:install
migrate:refresh
migrate:reset
migrate:rollback
publish:assets
publish:config
publish:migrations
publish:views

Weitere Details finden Sie hier

Khan Shahrukh
quelle
Dies beantwortet nicht die Frage
Dayuloli
Wo haben Sie in Ihrer Antwort ausdrücklich erwähnt, wie Sie eine Migration starten können? Sie haben einfach einige Befehle aufgelistet, die in artisan verfügbar sind.
Dayuloli
1
Befehl Nummer 6 ist für die Migration Ich bin nicht hier, um Menschen zu füttern
Khan Shahrukh
1
Sie müssen das Futter nicht löffeln, aber Sie müssen die Frage beantworten. Wenn nicht, antworte überhaupt nicht.
Dayuloli
0

Sie können auf diese Seite https://laravel.com/docs/6.0/migrations gehen und die von Ihnen verwendete Laravel-Version auswählen, um den richtigen Befehl zu erhalten.

dieser stille Beobachter
quelle
1
Bitte geben Sie weitere Informationen an und verweisen Sie nicht nur auf einen anderen Link.
Constantin Beer