2015-03-31 95 views
0

嘿,我想找到一個解決方案,我從MySQL使用此命令檢索數據:

$meals = TableRegistry::get('Users'); 
$query = $meals 
->find() 
->select(['id' ,'username']) 
->where(['role' => 'patient']); 
$data = $query->toArray(); 

這是使用後,我的代碼查詢 - >指定者()我得到這個值

{ "id": 4, "username": "s2" } 

我希望把我的形式是值,它是這樣的:

echo $this->Form->input('user_id', [ 
     'options' => [1 => 'Admin', 2 => 'Author'] 
    ]) ; 

如何使用的foreach獲得價值爲ID和usernmae作爲名稱的任何快速的解決方案

+0

** HTTP://book.cakephp.org/3.0/en/orm/retrieving-data-and-resultsets.html#finding-key-value -pairs ** – ndm 2015-03-31 07:03:36

回答

3

使用find('list')

$users = TableRegistry::get('Users') 
    ->find('list', ['valueField' => 'username']) 
    ->select(['id' ,'username']) 
    ->where(['role' => 'patient']); 

$this->set('users', $users); 

echo $this->Form->input('user_id', [ 
    'options' => $users 
]); 

http://book.cakephp.org/3.0/en/orm/retrieving-data-and-resultsets.html#finding-key-value-pairs

+0

嘿jose我有一些問題我想添加一個隱藏的輸入可以建議我在這裏d_id我想在這裏更新這個列uer_id得到更新,但在隱藏的形式它沒有做任何動作 – 2015-04-03 10:19:43