LaravelEloquent,Laravel,PHP

Thumbnail of post image 057

結論

削除しようとしているそのモデル、SoftDelete 設定になってません?

assertDatabaseMissing ではなく assertSoftDeleted 使ってね。

詳細

テストコードをたくさん書いていくぜー!

って張り切ったものの、めっちゃ足止め食らいました…。

リモートデバッグで1行ずつ動かしても、

App\Models ...

LaravelEloquent,Laravel,PHP

Thumbnail of post image 017

結論

DB::table() ->leftJoin() で第二引数にクロージャーを渡せるので、その中でフィルタ的な処理を書き込む。

詳細

ユーザーが投稿した記事の一覧を取得する際はこんな感じで LEFT JOIN を指定。

$users = DB::table('users') ->leftJoin('posts', 'users.id', '=', 'posts. ...

LaravelEloquent,Laravel,PHP

Laravel Logo

結論

ありがちなのが、

{{ $user->getFirstName() }}

の $user->getFirstName() で、なぜか配列(文字列ではなく)が返ってきていた、というヤツ。

詳細

「これ、なーんかあったよなー…🤔」

って毎度悩むのでメモ。

bladeでこのエラーが発生すると、妙に場所の特定が難しいんですよね…。

Laravel1対n,1対多,DB,Eloquent,Laravel,PHP,QueryBuilder,クエリビルダ,サブクエリー,リレーション

Thumbnail of post image 052
結論

Post と Comment (1対多の関係)を例にすると、

コントローラーからフツーに $posts を view に渡して…。

blade のループ内で

@forelse($posts as $post) <div>{{ $post->title }}</div> <div>{{ $post->commen ...

Laravel1対1,1対多,DB,Eloquent,Laravel,リレーション

Thumbnail of post image 029
結論

blade ファイルの中で @foreach と @empty を一緒に使ってません?

誤)

@foreach($posts as $post) <span>{{$post->title}}</span> @empty <span>該当データがありません</span> @endforelse

正)

@for ...

Laravel1対1,1対多,DB,Eloquent,Laravel,リレーション

Thumbnail of post image 054
結論

どっか間違ってるんで再確認を。自分の場合は hasOne() を設定するメソッド名を複数形にしてました…。

詳細

Laravel-Admin 導入しておりまして、最初に hasMany だったリレーションを hasOne に変更したんです。

この場合、公式ドキュメントにあるように、Laravel-Admin 用のコントローラー内で

$form->text ...

LaravelDate,Eloquent,Laravel,PHP,TimeStamp,日付

Thumbnail of post image 180

課題

日付のフォーマットを YYYY-MM-DD から YYYY/MM/DD に変更したい。

結論

モデルのDateフォーマットを↓こんな風に設定しても、うまくいかずエラーになってしまう。(MySQL ・ PostgreSQL ・ SQLite で試してみたけれど変わらず)

protected $dateFormat = 'Y/m/d H:i:s';

画面上の出力形式を変更 ...