Asked Jan 12th, 5:42 AM 93 0 2
  • 93 0 2
0

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

Share
  • 93 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 Jan 12th, 8:37 AM
Accepted
0

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
Jan 12th, 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:))

0
| Reply
Share
Vũ Nguyễn @vunguyen10111995
Jan 12th, 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.

0
| Reply
Share
Answered Jan 12th, 5:43 AM
0

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

Share
Phạm Huy @phhuy38
Jan 15th, 9:41 AM

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

0
| Reply
Share
Jan 23rd, 9:31 AM

@phhuy38 mình làm dc r cảm ơn bạn 😃))

0
| Reply
Share