Sırasını değiştirmek için nasıl CakePKP'deki 'katıldı'?

0 Cevap php

I birleştirme dizisi ile bir sorun vardır. Benzer bir sorun başka bir soru oldu http://stackoverflow.com/questions/3343348/manipulating-order-of-joins-in-cakephp. Cevap Containable davranışı kullanmak olmuştur. Ben derin ilişkilerimiz var ve containable çok sorguları oluşturur çünkü benim durumumda bu kabul edilemez. Yaratmayan Containable üç seviyeli dernekler için katıldı. Bu ikinci seviye tablodan her giriş için ek sorguları oluşturur.

Benim sorgu:

$this->LevelOne->find('all', array(
    'joins' => array(array(
         'table' => 'level_three',
         'alias' => 'LevelThree',
         'type' => 'LEFT',
         'conditions' => array(
              'LevelThree.id = LevelTwo.level_three_field_id'
          )
     ))
));

Burada sorun, kek birkaç katılır üretir olduğunu ancak LevelTwo tabloların katılır ve bir SQL hatası "Bilinmeyen sütun 'LevelTwo.level_three_field_id' in 'yan tümcesi'" atar önce LevelThree tablonun katılmak yapılır. Tüm LevelTwo katılır sonra LevelThree sorgunun sonunda olurdu katılmak durumunda sorgu iyi olurdu.

Yani, soru birleştirme sırasını değiştirmek nasıl?

0 Cevap