Laravel

Tech

【Laravel】JSON型のカラムにindexを生成してもindexが効かなくなった

本稿では、JSON型のカラムにindexを貼ってみたものの、Laravelで想定通りindexを使ってくれなかったケースを紹介します。JSON型カラムMySQLのJSON型って便利ですよね。あらかじめデータ構造を定義する必要が無いので、デー...
Tech

PhpStormで「Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?」が出たときの対処法

Docker Desktop for Macを使っている場合の話。問題PhpStormでDocker用にインタプリターを構成してPHPUnitを実行したところ、以下のメッセージが表示されました。Cannot connect to the D...
Tech

MacroableでPHPのオーバーロードを学ぶ

PHPのオーバーロードを説明する上でLaravelのMacroableがちょうど良いと思ったので。マクロについてLaravel内部の一部のクラスには、独自に定義したメソッドを追加できる「マクロ」という機能が備わっています。マクロを追加したい...
Tech

EloquentのsaveではCarbonオブジェクトをStringに変換している

はじめにEloquentを利用すると、以下の①、②のどちらのパターンでも保存することが出来ます。$foo = Foo::getModel();// ①明示的にStringを渡す$foo->fill([ 'datetime' => Ca...
Tech

CorcelでWordPressの投稿をLaravelで使う

WordPressの投稿をLaravelで扱ってみます。CorcelCorcelはEloquent ORMを利用してWordPressのデータを操作するインタフェースを提供しています。WordPresのデータベースへは直接接続することになり...
Tech

LaravelのorderedUuidはversion4っぽいorderedなUUIDを生成している

Str::orderedUuid()は先頭の48ビットでタイムスタンプで表しているため、順序が保証されるらしい。はじめにLaravelのmigrationsでテーブルを作成する際は、 $table->id() としてidカラムがPKになるこ...
Tech

Laravel SailでMySQLからPostgresに変更する方法

Laravelの環境をDockerで立ち上げるのに便利なLaravel Sailですが、同時に立ち上げるサービスを指定することができるようです。