2013-07-13 59 views
0

講師講授模塊,一些模塊組織者。在這裏,我正在提取講師講授的模塊:按子值排序CakePHP容納

array(
    (int) 0 => array(
     'organiser' => '1', 
     'module_id' => '2', 
     'lecturer_id' => '1', 
     'Module' => array(
      'code' => 'MOD2', 
      'name' => 'Z Name' 
     ) 
    ), 
    (int) 1 => array(
     'organiser' => '1', 
     'module_id' => '1', 
     'lecturer_id' => '1', 
     'Module' => array(
      'code' => 'MOD1', 
      'name' => 'Module Name' 
     ) 
    ) 
) 

如何通過模塊名稱對它進行排序?我已經使用hasMany through關係,因爲連接表中需要額外的數據(例如組織者)。這裏是我用來包含講師的個人資料的方法。註釋掉的行不起作用。

public function get($id = null) { 
    $this->contain(
     array(
      'User', 
      'County.name', 
      'School' => array(
       'fields' => array('code', 'name') 
      ), 
      'ModuleStaff' => array(
       'fields' => array('organiser'), 
       'Module' => array(
        'fields' => array('code', 'name'), 
       ), 
       // 'order' => 'Module.name', 
      ) 
     ) 
    ); 
    return $this->findByUserId($id); 
} 

這裏是我的ModuleStaff關係加入班級

public $belongsTo = array(
    'Lecturer' => array(
     'className' => 'Lecturer', 
     'foreignKey' => 'lecturer_id', 
     'conditions' => '', 
     'fields' => '', 
     'order' => '' 
    ), 
    'Module' => array(
     'className' => 'Module', 
     'foreignKey' => 'module_id', 
     'conditions' => '', 
     'fields' => '', 
     'order' => '' 
    ) 
); 

添加名稱爲模塊訂單價值無法正常工作或因爲每個ModuleStaff只能鏈接到一個模塊,我需要排序的實際工作ModuleStaff對象的子類中有一個值。

回答

0

您是否嘗試將'order' => 'Module.name'元素放入Module數組?像這樣:

+0

試過了,它沒有工作,這隻會在每個ModuleStaff包含多個模塊 – Connel