Davood
2 سال پیش توسط Davood مطرح شد
2 پاسخ

مشکل در بخش روابط لاراول

سلام دوستان وقت بخیر
من دو تا مدل دارم post وuser که به شکل زیر داخلشون روابط ایجاد کردم

مدل Post

public function user(){
return $this->belongsTo(User::class)
}

مدل User


public function posts(){
return $this->hasMany(Post::class)
}

حالا توی پنل مدیریت میخوام مقاله یا خبری که ثبت کردم رو نمایش بدم که به شکل زیر انجام میدم و کار میکنه

$posts = Post::paginate(20)
(return view('admin.posts.all',compact(('posts')

و کار میکنه مشکلی نیست

اما وقتی میخوام به شکل پایین نام کاربری رو که تو وب سایتم خبر ثبت کرده رو بگیرم و نشون بدم نتیجه درست رو بهم نمیده

$posts = Post::paginate(20)
foreach($posts as $post){
$p = Post::find($post['id'])
$user = $p->user()->get()
}
(return view('admin.posts.all',compact(('posts','user')

که user یک آبجکت به من میده و من میخوام name رو استخراج کنم اما نمیشه مشکل کد من کجاست؟

@ali.bayat
@hesammousavi
@mhyeganeh
@Alimotreb


ثبت پرسش جدید
فرشید مرادی
تخصص : noob
@eniack 2 سال پیش مطرح شد
2

سلام وقت بخیر ، ببینید اصلا نیازی به این کار نیست ، اتفاقا کار شما خیلی راحته ، شما پست هارو دارید و روابط هم ایجاد کردید و برای نمایش پست ها
داخل blade حتما به این صورت کار کردید:

 @foreach($posts as $item)
  @endforeach

اینجا فقط کافیه از طریق پست یوزر صدا زده بشه و مثلا ایمیل کاربر رو نمایش بده

 @foreach($posts as $item)
 <tr>
<td class="align_wrap">{{$item->user->email}}</td>
 </tr>
 @endforeach

Davood
تخصص : PHP - Laravel
@dfardabasi 2 سال پیش مطرح شد
1

سلام
@eniack
ممنون از راهنماییتون خوبتون
حل شد مشکلم
تشکر فراوان


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام