• 1401/04/14

بروز خطا در ثبت پاسخ به یک کامنت :

سلام استاد خسته نباشید

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

در حالتی که یک کامنت اصلی برای یک بلاگ ارسال میشه ، اون کامنت حتما باید از سوی مدیر تایید بشه تا به نمایش دربیاد که در این حالت هیچ مشکلی نیست اما در حالتی که برای کامنت اصلی ، پاسخ در نظر میگیریم و یک کامنت پاسخ رو ارسال میکنیم در سیستم فعلی نیاز به تایید اون کامنت پاسخ از سوی مدیر نیست و فقط با رفرش کردن صفحه اون کامنت پاسخ به نمایش درمیاد درصورتیکه مدیر اون کامنت پاسخ رو در پنل ادمین هنوز تایید نکرده است . این مورد برای تمام کامنتهای پاسخ صدق میکنه یعنی بدون اینکه تایید بشن ، بعنوان فرزندان کامنت اصلی به نمایش درمیایند . در کل میخواهم بدونم که در سیستم شما ، اگر شما یک کامنت پاسخ را درنظر بگیرید که توسط مدیر هنوز تایید نشده باشه آیا به نمایش در میاد یا نه ؟ ( در سیستم من چه کامنت پاسخ تایید بشه چه نشه در هر 2 صورت به عنوان پاسخ به کامنت اصلی به نمایش درمیاد فقط با رفرش کردن صفحه بعد از ارسال کامنت پاسخ ) .

بنظرم مشکل در query هست که میزنیم ، طبق تصویر ارسالی زیر ما داریم میگیم که : ( لیست تمام کامنتهایی رو میخواهیم همراه با فرزندانش با این شروط که مربوط به بلاگ با شماره فلان ، تایید شده توسط مدیر  در کنار اینکه کامنت اصلی باشند ) ، حالا در این query دیگه فرقی نمیکنه که کامنتهای پاسخ ، توسط مدیر تایید بشن یا نه در هر حالت به نمایش درمیایند .

 من از comments$  حتی ()dd هم گرفتم که دقیقا به جمله بالا اشاره میکرد یعنی لیست تمام کامنتها رو برمیگردوند به همراه پاسخهای یک کامنت چه تایید شده باشن و چه نشده باشن .

ممنون از شما ، ممکنه من اشتباه کرده باشم ولی با کدهای شما که بررسی کردم متوجه تفاوتی نشدم . امیدوارم که تونسته باشم منظورمو خوب به شما برسونم .

با تشکر

  • 1401/04/14
  • ساعت 22:24

سلام دوست خوبم

بله بررسی کردم میتونید این کد رو جایگزین کنید

 $comment = Comment::with(['childs' => function ($query) { $query->where('status', 1);}])->where('blog_id', $id)->where('status', 1)->whereNull('parent_id')->get();

سایت انلاین شد رفعش میکنم


logo-enamadlogo-samandehi