Laravelでよく使うコマンド一覧

Laravel

ついつい忘れがちなLaravelのコマンド一覧です

なお、各コマンドの実行場所はプロジェクトのルートディレクトリにいる前提です

初期設定

プロジェクトを作る

$ composer create-project --prefer-dist laravel/laravel プロジェクト名

–prefer-distオプションは、git cloneではなくzip形式でダウンロードしてくるので高速です

Laravelのコマンドって基本的に「php artisan ○○」という形式なんですが、このプロジェクトの作成はコンポーザーの機能を使ってるのでcomposer〜となります

Laravelのバージョン確認

$ php artisan -V
 
Laravel Framework 7.24.0

Vが大文字であることに注意

ローカル環境でサーバを起動

$ php artisan serve
 
Laravel development server started: http://127.0.0.1:8000

ユーザー認証機能を追加(vue)

$ composer require laravel/ui
 
 - Installing laravel/ui (v2.1.0): Loading from cache
Package manifest generated successfully.

コンポーザーを使ってlaravel/uiパッケージをインストールします

$ php artisan ui vue --auth
 
Vue scaffolding installed successfully.
Please run "npm install && npm run dev" to compile your fresh scaffolding.
Authentication scaffolding generated successfully.

vueによる認証機能を有効にします

$ npm install && npm run dev
 
 DONE  Compiled successfully in 10286ms
 
       Asset     Size   Chunks             Chunk Names
/css/app.css  178 KiB  /js/app  [emitted]  /js/app
  /js/app.js  1.4 MiB  /js/app  [emitted]  /js/app

最後にjavascriptのパッケージをコンパイルします

Laravel Mixを有効にする

$ npm install
$ npm run dev

このコマンドを実行せずにmixファイルを読み込もうとすると「The Mix manifest does not exist.」というエラーが出ます

Bootstrap4をインストール

$ composer require laravel/ui

laravel/uiパッケージにはユーザ認証機能の他、Bootstrapなどの装飾パッケージも含まれます

$ php artisan ui bootstrap

Bootstrap scaffoldをインストールします

コントローラー

生成

$ php artisan make:controller HageController
 
Controller created successfully.

↓自動生成されるファイル

<?php
 
namespace App\Http\Controllers;
 
use Illuminate\Http\Request;
 
class HageController extends Controller
{
    //
}

DB

モデル生成

$ php artisan make:model Note
Model created successfully.

↓自動生成されるファイル

<?php
 
namespace App;
 
use Illuminate\Database\Eloquent\Model;
 
class Note extends Model
{
    //
}

ファサードの追加

laravelcollective/html

Bladeファイル内でフォームをつくる時に便利なFormファサードに必要なパッケージ

$ composer require laravelcollective/html
    'providers' => [
        ~~~~~ 省略 ~~~~~
        Collective\Html\HtmlServiceProvider::class, // ← 追加
    ],

    'aliases' => [
        ~~~~~ 省略 ~~~~~
        'Form' => Collective\Html\FormFacade::class, // ← 追加
        'Html' => Collective\Html\HtmlFacade::class, // ← 追加
    ],