Amir Alsaeed نشر 21 مارس 2021 أرسل تقرير نشر 21 مارس 2021 لقد قمت بإنشاء حلقة للمرور على التعليقات المكتوبة من قبل مستخدم على كتاب معيّن: foreach($book->student->comments as $comment) { echo "<li>" . $comment->title . " (" . $comment->book->id . ")</li>"; } ولكن تمت الطباعة بشكل غير مرتب فكانت النتيجة كالتالي: This book is good (3) Test comment(2) New Test Comment (4) كيف يمكنني إضافة الترتيب على الحلقة لطباعة التعليقات بشكل مرتب 2 ثم 3 ثم 4 ؟ اقتباس
0 Waleed Alfakiat نشر 21 مارس 2021 أرسل تقرير نشر 21 مارس 2021 نقوم بتعديل الدالة في كلاس Student المسؤولة عن استرجاع التعلقيات public function comments() { return $this->hasMany('Comment'); } لتصبح public function comments() { return $this->hasMany('Comment')->orderBy('id'); } اقتباس
0 محمد أيت لعرايك نشر 22 مارس 2021 أرسل تقرير نشر 22 مارس 2021 بإمكانك إنشاء تابع جديد في النموذج User بهذا الشكل: public function commentsSorted() { return $this->hasMany('Comment')->orderBy('post_id'); } و عند عرض التعليقات تقوم بالتالي: foreach($post->user->ommentsSorted as $comment) { echo "<li>" . $comment->title . " (" . $comment->post->id . ")</li>"; } أو تعرض المعلومات بالطريقة التالية: @foreach($comments as $comment) <li>{{ $comment->title }} ({{ $comment->post_id }})</li> @endforeach اقتباس
السؤال
Amir Alsaeed
لقد قمت بإنشاء حلقة للمرور على التعليقات المكتوبة من قبل مستخدم على كتاب معيّن:
ولكن تمت الطباعة بشكل غير مرتب فكانت النتيجة كالتالي:
This book is good (3) Test comment(2) New Test Comment (4)
كيف يمكنني إضافة الترتيب على الحلقة لطباعة التعليقات بشكل مرتب 2 ثم 3 ثم 4 ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.