• 0

كيف أستعمل Many To Many على Laravel5؟

على إطار العمل Laravel في إصداره 5 أريد استعمال Many To Many لربط بعض الجداول.

رسالة من طرف Model:

 function tags(){
      return $this->belongsToMany('App\tags')->withTimestamps();
    }

Tags Model:

 public function messages() {
     return $this->belongsToMany('App\messages', "messages_tags",     "messages_id", "tags_id");
  }

Input:

  $tag = App\tags::where('name','public')->first();

 

App\tags {#681
 id: "5",
 name: "Public",
 created_at: "2016-02-10 13:51:36",
 updated_at: "2016-02-10 08:21:36",
 }

احاول استعادة Message مع tag:

$tag->messages()->get();

لكن كل ما أحصل عليه هو:

[]

ماهو الخطأ المُرتكب هنا؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

على Message Model وبالضبط في وظيفة  ()tags التي تزود messages_tags  بالبيانات، يجب أن يتوفر على 'messages_id' و 'tags_id'، وللولوج إلى messages يجب استعمال:

$tag->messages;

لاستعمال Many، جرب هذه الطريقة:

$tag = App\tags::with('messages')->where('name','public')->first();

أي استعمل:

$tag->messages;

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن