2016-06-01 70 views
0
User Table - 

column name - location_id 

values =  4,5 

Location table 

column name - id , location_name 

values =  4 nagpur 
       5, Akola 

我想通過加入用戶表的LOCATION_ID,以顯示在列表框的位置名稱,使用來自兩個表中提取在列表框的值加入

假設在用戶表中的LOCATION_ID柱4,5的值都存在,那麼在我選擇框只顯示位置表中的nagpur,Akola。

我無法理解如何在選擇前展開location_id表的值,並且只顯示位置表中location_id列中可用的那些值。

public function getUserLocations() { 
     $this->loadModel('User'); 
     $getlocations = $this->User->find('list', array(   
     'fields' => array('Location.id','Location.location_name'), 
     'joins' => array(
       array(
        'table' => 'locations', 
        'alias' => 'Location', 
        'type' => 'LEFT', 
        'conditions' => array('FIND_IN_SET(User.location_id,Location.id)') 
       )     
      ),    
     )); 
     $this->set('getlocations', $getlocations); 
    } 

下面是我的代碼..

+0

在數組中,是表=位置還是位置?最後一個在位置... –

+0

陣列中的值來自位置 –

回答

0

爆炸變量是這樣的:

$getlocations = $this->User->find('list', array(   
     'fields' => array('Location.id')); 

$location_ids[] = explode (',', $getlocations); 

現在你會得到陣列格式的數據。根據您的需要修改它