はじめに
laravel では何をするにも artisan を良く使うが、毎回調べるのも何なので、
よく使うコマンドをチート的にまとめておく。
プロジェクト作成
composer create-project laravel/laravel プロジェクト名 --prefer-dist
storage 以下に書込み権限がないと 500エラーになるので注意。laravel のバージョンを特に指定しないなら --prefer-dist の後ろのに "5.5.*" の様にバージョンを追加して呼び出す。
コントローラ作成
php artisan make:controller コントローラ名 (例:AdminControllerとか)
app/Http/Controller/ に作成される --resource を付けるとリソースに対する様々なアクションを作成してくれる。
モデル作成
php artisan make:model モデル名 (例:Adminとか)
app/に作成される
テーブル作成
php artisan make:migration create_テーブル名_table (例:adminsとか)
database/migrations/に作成されるので、フィールド等を追記する。
No such file or directory と表示され、エラーになったら、とりあえず以下を実行してみる。
composer dump-autoload
YYYY_MM_DD_HH_II_SS_create_admins_table.php
public function up()
{
Schema::create('admins', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('password');
$table->timestamps();
});
}
:
public function down()
{
Schema::drop('admins');
}
マイグレーション実行
実際のテーブルが作成される
php artisan migrate
シーダー作成
php artisan make:seeder シーダー名 (例:AdminTableSeederとか)
database/seeders/ に作成されるので、初期値を設定する。
AdminTableSeeder.php
public function run()
{
DB::table('admins')->insert([
'name' => 'admin',
'password' => bcrypt('secret'),
]);
}
これだけでは実行されないので、database/seeders/DatabaseSeeder.php に
呼び出し部分を記述する。
DatabaseSeeder.php
public function run()
{
Model::unguard();
$this->call(AdminTableSeeder::class);
Model::reguard();
}
シーダー実行
php artisan db:seed
php artisan db:seed --class=AdminTableSeeder
初期値が設定される。
キャッシュクリア
php artisan cache:clear
パブリッシュ
php artisan vendor:publish
パッケージのビューがユーザ領域のビューにコピーされる。
認証クイックスタート
php artisan make:auth
認証関連がスカフォールドされる。