cakephp, select для формы генерируются с помощью запроса

#forms #select #cakephp-1.3

#формы #выберите #cakephp-1.3

Вопрос:

У меня есть этот запрос в контроллере

 $clientslist = $this->Client->query("SELECT client_name FROM clients WHERE active=1");
  

как я могу показать список моих клиентов с помощью select в форме?

 echo $this->Form->input('clientname', array('type' => 'select', 'options' => ??????));
  

Спасибо


Редактировать

я решил свою проблему

в контроллере

 $clientslist = $this->Client->find('list', array('fields' => array('Client.client_name'), 'conditions' => array('Client.active' => '1')));
        $this->set('clientslist', $clientslist);
  

в представлении

 echo $this->Form->input('cliente', array('type' => 'select', 'options' => $clientslist));
  

теперь у меня другая проблема

учитывая, что значением каждого параметра в поле выбора является идентификатор, как я могу использовать имя клиента в значении?

Ответ №1:

Измените свой запрос на следующий:

 $clientslist = $this->Client->find('list', array('conditions' => array('Client.active' => '1')));
  

Это автоматически создаст список опций ID, NAME для использования в поле выбора.

Комментарии:

1. с моим запросом я получаю <option value="4">Apple</option> , с вашим я получаю <option value="4">4</option> , но мне нужно <option value="Apple">Apple</option>