Asked Saturday, 5:42 AM 59 0 2
  • 59 0 2
0

Hỏi cách hiển thị giữa mối quan hệ one to many trong laravel

Share
  • 59 0 2

Các bác cho e hỏi chút ạ:

  • Mình có 2 bảng user và comment sử dụng mối quan hệ one to many( Một người dùng có nhiều comment

  • Ở model User mình đã có hàm: public function comments() { return $this->hasMany('App\Comment'); }

  • Ở model Comment mình đã có hàm: public function user() { return $this->belongsTo('App\User'); }

  • Trong controller mình viết câu lệnh eloquent để get toàn bộ bảng comment ra.

  • Phía view mình truyền biến ở controller sang và mình muốn get thêm tên người comment như sau: {{$comment->user->name}} Nhưng lại bị lỗi sau: Trying to get property of non-object Mọi người xem giúp e với ạ. E xin cảm ơn

2 ANSWERS


Answered Saturday, 8:37 AM
Accepted
+1

Trong Controller bạn phải truy vấn lấy cả user nữa. Truy vấn như sau : Comment::with('user')->get();
sau đó trong view bạn sử dụng foreach rồi lấy như trên

Share
Saturday, 10:25 AM

@vunguyen10111995 e cảm ơn a cách của a cx đc ạ. hoặc e dùng cách: {{$comment->user['name']}} cx chạy dc ạ đa tạ a:))

Vũ Nguyễn@vunguyen10111995
Saturday, 5:16 PM

@manhtien oki bạn. Nếu có vấn đề gì bạn cứ đưa ra câu hỏi trên viblo, mọi người sẽ cố gắng hỗ trợ bạn.

Answered Saturday, 5:43 AM
0

các bác giúp e với 😦((

Share
Phạm Huy@phhuy38
about 13 hours ago

Bác chụp code đưa lên đây xem nào.