前回に紹介したLaravel Zeroはとても有用そうです。しかし、データベースの操作を行うことができなければですね。ということで、今回はその機能を追加します。さらに、もちろん私の好きなtinkerも使えるようにします。

データベース機能の追加

前回と同じプロジェクトの続きとして、データベース機能を追加します。前回では、applicationartisanに改名したことをお忘れずに。

$ php artisan app:install database
Installing database component...
...
Require package via Composer: ✔
Creating a default SQLite database: ✔
Creating migrations folder: ✔
Creating seeders folders and files: ✔
Creating factories folder: ✔
Creating default database configuration: ✔
Updating .gitignore: ✔
...

上の実行により、Laravelでお馴染みのconfig/database.phpも追加されるので、.envに以下を追加します。

...
DB_CONNECTION=mysql
DB_HOST=localhost
DB_DATABASE=zero
DB_USERNAME=root
DB_PASSWORD=password

準備が整ったら、これまたLaravelでお馴染みのEloquentのクエリの実行などが使えます。


use App\User;
use Illuminate\Support\Facades\DB;

$users = User::all(); // Eloquent

$users = DB::table('users')->get(); // Query Builder

Tinker

私には大好きなツールですが、これもデフォルトではLaravel Zeroにはデフォルトで装備されていません。
外部パッケージとなっているので、composerでインストールします。

$ composer require intonate/tinker-zero

さらに、config/app.phpを編集して以下の行を追加します。

'providers' => [
    App\Providers\AppServiceProvider::class,
  Intonate\TinkerZero\TinkerZeroServiceProvider::class, // これを追加!
],

実行してみましょう。こちらも、前回にapplicationartisanに改名したことをお忘れずに。

$ php artisan tinker
Psy Shell v0.12.4 (PHP 8.2.15 — cli) by Justin Hileman
> use App\User;
> User::count();
> 4

参照

Laravel Zero(1)コマンドの作成

メルマガ購読の申し込みはこちらから。

By khino