كيف يمكنني الاستعلام عن جدول يعتمد على علاقة HABTM مع توفير شروط إضافية في CakePHP؟

StackOverflow https://stackoverflow.com/questions/602227

  •  03-07-2019
  •  | 
  •  

سؤال

كيف يمكنني القيام بذلك في CakePHP:أنا أستخدم جدولين (regions و safaris) وجود علاقة متعدد إلى متعدد.يتم ربط الجداول بجدول آخر يسمى regions_safaris (مع الحقول region_id & safari_id).أريد جلب كل شيء safaris تلبية معايير معينة مثل فترات 5 أيام وفي منطقة معينة.يجب تنفيذ ذلك في CakePHP

هل كانت مفيدة؟

المحلول

جمعة,

يرجى مقاومة النشر عدة مرات بهذه السرعة.

لمزيد من المرجع، يرجى الاطلاع على علاقة Cakebook Has-And-Belongs-To-Many.هذا هو بالضبط ما تصفه.يرى http://book.cakephp.org/view/83/hasAndBelongsToMany-HABTM

باختصار، بافتراض أن لديك إعداد نماذج الكعكة بشكل صحيح (مع وجود علاقة HABTM بين المناطق ورحلات السفاري والمناطق_safaris؛تحقق من فهرس 'joinTable' في المصفوفة var $hasAndBelongsToMany، في النماذج)، فستفعل هذا:

   class SafariModel extends AppModel
   { 
     var $name = 'Safari';
     var $hasAndBelongsToMany = array( 'Tag'=>array( ..., 'joinTable'=>'regions_safaris', ... );

     function findSafaris( $duration = 5, $region = null )
     {
       return $this->find('all', array('conditions'=>array('Region.region_name'=>$region, 'Safari.duration'=>$duration) );
     }
     ... // rest of class
   }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top