سلام ، من یه تیکه کدی نوشتم برای سرچ کردن بین کامنت ها ، و من تو view خودم به صورت Tab وار نشونشون میدم . ولی تو سرچ دو تا where پشت سر هم میشن و خراب میکنه دومی رو ، کد رو بخونید متوجه میشید.
$comments = Comment::WhereHas('user', function ($query) use ($keyword) {
$query->where('name', 'LIKE', "%{$keyword}%");
})->orWhere([
['body', 'LIKE', '%' . $keyword . '%'],
]);
$comments2 = $comments;
return view('admin.comments.all_comments', [
'approved_comments' => $comments->where('approved', 1)->paginate(10, ['*'], 'approved'),
'unapproved_comments' => $comments2->where('approved', 0)->paginate(10, ['*'], 'unapproved')
]);
حتی یه متغیر به اسم $comments2 هم ساختم و کوئری اول رو درش ذخیره کردم ولی فرقی نکرد ، به نظرتون باید چی کار کنم کوئری اول رو برای هر جفتشون مجبور نباشم تکرار کنم ؟ خیلی ممنون
سلام
به نظرم بهترین راهکار در چنین شرایطی استفاده از clone
هست:
$query = Comment::WhereHas('user', function ($q) use ($keyword) {
$q->where('name', 'LIKE', "%{$keyword}%");
})->orWhere([
['body', 'LIKE', '%' . $keyword . '%'],
]);
return view('admin.comments.all_comments', [
'approved_comments' => (clone $query)->where('approved', 1)->paginate(10, ['*'], 'approved'),
'unapproved_comments' => (clone $query)->where('approved', 0)->paginate(10, ['*'], 'unapproved')
]);
@mhyeganeh به به ، از کی بود میخواستم ببینیم clone به چه دردی میخوره بلاخره یافت شد , مرسی از راه حلتون 😂
سلامت باشید.
به همین خاطره که میگن بهترین روش یادگیری این هست که تو دل کار با مسئله اش مواجه بشی 😉
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟