سلام من یه برنامه چت خیلی ساده دارم شامل 3 تا جدول users , chatrooms و chats من میخوام چت روم هارو بر اساس جدیدترین پیام هاشون مرتب سازی کنم مثله هر نرم افزار پیام رسانی که اون چتهایی که دارای جدید ترین پیام هستن رو بالاتر از همه نشون میده
در حال حاضر از کوری زیر استفاده میکنم
ChatRoom::with('user')
->join('chats','chat_rooms.room_id','chats.room_id')
->select('chat_rooms.*','chats.created_at as c','chats.message')
->orderBy('c','DECS')
->paginate(5);
حالا مشکل اینجاس که این کوری تموم چت هارو بر میگردونه که چیزی نیست که من میخوام من سعی کردم چت روم هارو گروه بندی کنم اما اینکار هم جواب نداد.
راهکار سادهای دارم، اون هم اینکه هر وقت پیام جدیدی فرستاده شد، ستونی روی تیبل chatrooms آپدیت بشه، مثل last_message_at یا چیزی مشابهش؛ اینطوری خیلی راحت با یک orderBy قابل مرتبسازیه.
ممنون از وقتی که گزاشتی مشکل اینجا بود که امکان تغیر در جداول نبود
بعد از چند ساعت سرچ این تاپیک رو پیدا کردم و مشکل حل شد
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟