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

結論

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

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

blade のループ内で

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

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

結論

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

誤)

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

正)

@for ...

Firebase, テスト

結論

Firebase CLI でログインしているユーザーとは別のアカウントで Project 作ってた…。

経緯

Firebase で テスト環境を追加したんですが、そちらに切り替えようとしても、

> firebase use testError: Invalid project selection, please verify project staging exis ...

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

結論

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

詳細

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

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

$form->text ...

PHPNull, PHP, 空判定

PHP 7.2.9 にて調査。

*1:「Notice: Undefined variable」が発生。

環境構築Docker, nginx, 仮想マシン

結論

仮想環境から作業してるディレクトリ(フォルダ)が見えない状態になってました。

残念ながら Windows 10 Home だったので Docker Toolbox を使用したんだですが、Oracle VM VirturalBox の共有フォルダ設定(って言うとややこしいんだけど、「ホスト側のこのフォルダを、ゲスト側から使えるようにしますよ」って設定)がされていなかったのが原因 ...

環境構築

結論

OneDrive !またお前かーーーっ?

現象

きっかけは、 php artisan serve でおかしなエラーがでるようになったこと。

つい昨日まで動いていたのになぜだ!と状況を調べてみると、どうも composer がおかしい模様。

composer diagnose

を実行してみると、不思議なエラーが出て止まってしまう。

proc_open( ...

LaravelCSRF, debug, デバッグ, トークン

CSRF トークンが正しく渡っていない可能性が高いのだけれど、他の原因も考えられるしなぁ…。という場合は、とにかく

vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\VerifyCsrfToken.php

でプレイクポイント設定して、トークンの値がきちんと渡っているか?を確認した方が早 ...

Laravel, Vue.jsBlade, Javascript, Laravel, PHP, Vue.js, , 日付

現象

“1980/12/12” って日付を渡してるはずなのに Vue 側で 13.75 とか表示されてしまう。

結論

計算式として 1980/12/12 が評価されてた。( 1980 ÷ 12 ÷ 12 = 13.75 )

詳細Blade側<mycomponent :birthday={{$birth}}></mycomponent&g ...

LaravelEloquent, Laravel, PHP

結論

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

詳細

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

ただし、この場合だと LEFT JOIN (テーブル名) ON (条件式…)の条件式部分に1つの条件(通常はキーカラムをマッチさせる)しか指定で ...