اذهب إلى المحتوى
  • 0

التعامل مع الخاصية belongsTo في laravel

Osama Kha

السؤال

//التابع موجود في مودل الابن
public function FaNa()
    {
        return $this->belongsTo(Faculty::class, 'Faculty_ID_FK');
    }
 ///في متحكم الابن اقوم ب استدعائه
$post = Event::find(8)->FaNa->Faculty_Name;

احتاج الى استبدال الرقم 8 ب متحول يقوم ب ارجاع جميع الكليات المثال السابق فقط يرجع كلية واحدة وهي 8  في الصورة المرفقة يتم توضيح المشكلة

ff.png

تم التعديل في بواسطة Osama Kha
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

استخدم الدالة with في الاستعلام لجلب جميع الأحداث مع علاقتها بالكليات، ثم استخدام حلقة foreach للحصول على اسم الكلية لكل حدث.

مثال:

$events = Event::with('FaNa')->get();

foreach ($events as $event) {
    $facultyName = $event->FaNa->Faculty_Name;
    // القيام بالعمليات المطلوبة باستخدام اسم الكلية
}

ستحصل على مصفوفة $events تحتوي على جميع الأحداث وعلاقتها بالكليات، وستتمكن من الوصول إلى اسم الكلية لكل حدث باستخدام $event->FaNa->Faculty_Name.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 ساعة قال Mustafa Suleiman:

استخدم الدالة with في الاستعلام لجلب جميع الأحداث مع علاقتها بالكليات، ثم استخدام حلقة foreach للحصول على اسم الكلية لكل حدث.

مثال:

$events = Event::with('FaNa')->get();

foreach ($events as $event) {
    $facultyName = $event->FaNa->Faculty_Name;
    // القيام بالعمليات المطلوبة باستخدام اسم الكلية
}

ستحصل على مصفوفة $events تحتوي على جميع الأحداث وعلاقتها بالكليات، وستتمكن من الوصول إلى اسم الكلية لكل حدث باستخدام $event->FaNa->Faculty_Name.

في هذه الحالة يقوم بعمل جداء ديكارتي ويكرر كل الاحداث عند كل الكليات ف عند طباعة $facultyName يقوم بوضع كل حدث مع كل الكليات

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

من الصورة المرفقة يمكن ملاحظة أن الكود المستخدم يستخدم دالة find للعثور على حدث واحد فقط من نموذج Event بناءً على معرف الحدث. للحصول على جميع الكليات التي تنتمي إلى حدث معين ، يمكن استخدام دالة where للعثور على الأحداث الخاصة بالحدث المطلوب ، ثم استخدام حلقة foreach للحصول على جميع الكليات المرتبطة بهذه الأحداث.

على سبيل المثال ، يمكن استخدام الكود التالي للحصول على جميع الكليات المرتبطة بحدث معين بناءً على معرف الحدث:

$event_id = 8; // قم بتعيين هذا المتغير بالقيمة المطلوبة
$events = Event::where('id', $event_id)->get();

foreach ($events as $event) {
    $faculties = $event->FaNa;
    foreach ($faculties as $faculty) {
        $faculty_name = $faculty->Faculty_Name;
        // استخدم $faculty_name كما تحتاج
    }
}

يتم استخدام دالة where للعثور على الحدث الذي يتطابق مع معرف الحدث المطلوب ، ثم يتم استخدام دالة get لاسترداد جميع الأحداث التي تتطابق مع هذا الشرط. بعد ذلك ، يتم استخدام حلقة foreach للحصول على جميع الكليات المرتبطة بكل حدث ، وتخزين اسم كل كلية في متغير faculty_name للاستخدام فيما بعد.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 11 ساعة قال عبدالباسط ابراهيم:

من الصورة المرفقة يمكن ملاحظة أن الكود المستخدم يستخدم دالة find للعثور على حدث واحد فقط من نموذج Event بناءً على معرف الحدث. للحصول على جميع الكليات التي تنتمي إلى حدث معين ، يمكن استخدام دالة where للعثور على الأحداث الخاصة بالحدث المطلوب ، ثم استخدام حلقة foreach للحصول على جميع الكليات المرتبطة بهذه الأحداث.

على سبيل المثال ، يمكن استخدام الكود التالي للحصول على جميع الكليات المرتبطة بحدث معين بناءً على معرف الحدث:

$event_id = 8; // قم بتعيين هذا المتغير بالقيمة المطلوبة
$events = Event::where('id', $event_id)->get();

foreach ($events as $event) {
    $faculties = $event->FaNa;
    foreach ($faculties as $faculty) {
        $faculty_name = $faculty->Faculty_Name;
        // استخدم $faculty_name كما تحتاج
    }
}

يتم استخدام دالة where للعثور على الحدث الذي يتطابق مع معرف الحدث المطلوب ، ثم يتم استخدام دالة get لاسترداد جميع الأحداث التي تتطابق مع هذا الشرط. بعد ذلك ، يتم استخدام حلقة foreach للحصول على جميع الكليات المرتبطة بكل حدث ، وتخزين اسم كل كلية في متغير faculty_name للاستخدام فيما بعد.

 @foreach ($post as $event)
	 <td> {{ $faculties = $event->FaNa }}</td>
		@foreach ($faculties as $item)
			<td> {{ $item->Faculty_Name }}</td>
		@endforeach
 @endforeach


////
 $post = Event::where('Faculty_ID_FK', 3)->get();

يظهر رسالة الخطأ التالية

Attempt to read property "Faculty_Name" on bool

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...