前回に紹介したLaravel Zeroはとても有用そうです。しかし、データベースの操作を行うことができなければですね。ということで、今回はその機能を追加します。さらに、もちろん私の好きなtinkerも使えるようにします。
データベース機能の追加
前回と同じプロジェクトの続きとして、データベース機能を追加します。前回では、applicationをartisanに改名したことをお忘れずに。
$ 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, // これを追加! ],
実行してみましょう。こちらも、前回にapplicationをartisanに改名したことをお忘れずに。
$ php artisan tinker Psy Shell v0.12.4 (PHP 8.2.15 — cli) by Justin Hileman > use App\User; > User::count(); > 4