発生している問題
DBから取得してきたデータをblade.phpファイル内で表示しようとするとタイトル記載のエラーになります。
該当のソースコード
Shopcontroller.php (Userテーブルからデータを取得し、review.blade.phpに流す処理)
public function review(Request $request, User $user) { $uid = Auth::id(); $user_data = $user->getData($uid); return view('review', compact('user_data')); }
User.php (DBからnicknameカラムの情報を取得してくる処理)
public function getData($uid) { return $this->where('id', $uid)->get(['nickname']); } 変更後 public function getData($uid) { return $this->where('id', $uid)->get(['nickname'])->toArray(); }
review.blade.php
@foreach ($user_data as $user_datum) <span id="nickname"> {{$user_datum->nickname}} </span> @endforeach 変更後 @foreach ($user_data as $dictionary) <span id="nickname"> {{$dictionary['nickname']}} </span> @endforeach
補足情報(FW/ツールのバージョンなど)
Laravel Framework 8.39.0
PHP 7.4.19
ddコマンドでコレクションの中身を確認すると値が含まれているように見えます("nickname" => "G-SHOPカスタマー")
回答1件
あなたの回答
tips
プレビュー