フリーランス 技術調査ブログ

フリーランス/エンジニア Ruby Python Nodejs Vuejs React Dockerなどの調査技術調査の備忘録

LaravelAdminでCRUDをする

はじめに

モデルを作成する

php artisan make:migration create_categories_table
  • モデルの定義を記述する。
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateCategoriesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('categories', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('categories');
    }
}
  • テーブルの作成
php artisan migrate
php artisan make:model Category

Laravel adminのコントローラーを作成する

  • モデルを作成するときに作成したモデルを指定する
$ php artisan admin:make UserController --model=App\Models\User
  • Modelが見つからないと怒られる
Model does not exists !
  • 正しい指定は下記のように「\」区切りでパスを指定すると作成に成功する
$ php artisan admin:make UserController --model=App\\Models\\User
App\Admin\Controllers\UserController created successfully.

Laravel-adminへのルーティング

  • app/Admin/routes.phpファイルにルーティングを設定する
$router->resource('/category', CategoryController::class);

動作確認

f:id:PX-WING:20201007090316p:plain