راکت

گرفتن آخرین رکود هر کاربر

3 پاسخ

سلام . یه جدول داریم user_id کلید خارجی این جدوله حالا میخوام آخرین رکورد هر کاربر در این جدول را بگیریم
کوئری این نتیجه چیه؟

ثبت پرسش جدید

پاسخ‌ها

3
سید حسین رضوی
سید حسین رضوی
@hossein.r.1442

تخصص: برنامه نویس وب و طراح رابط کاربری

$user = User::find(1);
$user->articles()->first();
سبحان دادخواه
سبحان دادخواه
@SobhanDadkhah

تخصص: دانشجوی برنامه نویسی :)

با سلام . @a.kiani110
باید نوع رابطه مشخص باشه مثلا یک به یک یا یک به چند ولی من روی یک به چند براتون مثال میزنم . مثلا هر کاربر چندین مقاله داره و هر مقاله متعلق به یک کاربره . میشه رابطه یک به چند بین user و Article که طبیعتا داخل جدول article فیلدی به نام user_id بعنوان کلید خارجی دارید.
اول داخل مدل ها باید رابطه ها رو تعریف کنید : برای مثال شما داخل مدل User این رابطه رو برقرار میکنید :

public function articles()
  {
  return $this->hasMany(Article::class);
  }

و بعد جایی که خواستید مطالب مربوط به کاربر رو نمایش بدین ( مطالبی که کاربر مورد نظر ثبت کرده ) از کد زیر استفاده میکنید :

$user = User::find(x) // x دریافت یوزر با آیدی 
$myArticles = $user->articles()->get(); // همه مقالات مربوط به کاربر
$myLastArticle = $user->articles()->last(); // اخرین مقاله مربوط به کاربر

امیدوارم مفید بوده باشه . موفق باشید

شاید پاسخ شما همین‌جا باشد

ali kiani
ali kiani
@a.kiani110

دوستان گفتم آخرین رکورد (هر)کاربر نه یه کاربر تنها جدولی که کلید خارجی کاربر را داره نسبت به جدول کاربر belongsTo هست

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

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