Вывод списка

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
ostin
Сообщения: 83
Зарегистрирован: 2009.10.10, 15:55
Контактная информация:

Вывод списка

Сообщение ostin »

Привет. Какая-то непонятная у меня проблема с выводом данных из БД.
Model - таблица с полями ID, Name

В контроллере:

Код: Выделить всё

$model = new Model;
$model->findAll();
$this->render('show',array('model'=>$model));
 
В отображении:

Код: Выделить всё

echo CHtml::listData($model,'ID','Name');  // возвращает нули ( "" => NULL )
echo $model->count();                      // выводит актуальное кол-во записей.
 
Разъясните пож-ста, как получить список записей :oops: всю голову сломал.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Вывод списка

Сообщение samdark »

$model->findAll(); возвращает значения. Вы их никуда не присваиваете.
ATI
Сообщения: 69
Зарегистрирован: 2009.09.27, 12:35

Re: Вывод списка

Сообщение ATI »

Код: Выделить всё

$model = new Model;
$models = $model->findAll();
$this->render('show',array('model'=>$models)); 
upd: Отвлёкся, уже ответили:)
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Вывод списка

Сообщение Ozzy »

Мой маленький блог - http://dbhelp.ru
ostin
Сообщения: 83
Зарегистрирован: 2009.10.10, 15:55
Контактная информация:

Re: Вывод списка

Сообщение ostin »

Спасибо!

dbhelp.ru отдельное спасибо:) Эта статья появилась уже после того, как я основательно его прошерстил :)
ostin
Сообщения: 83
Зарегистрирован: 2009.10.10, 15:55
Контактная информация:

Re: Вывод списка

Сообщение ostin »

Единственно, теперь проблема с dropDownList :(

dropDownList($name,$select,$data,$htmlOptions=array())

Не понятно, что надо указывать в $select. Пробовал и поля из $data, и названия полей - ничего :shock:

CHtml::dropDownList('DDlist',???,CHtml::listData($model,'Id','Value'),'empty');
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Вывод списка

Сообщение Ozzy »

Вот спецально переводил http://dbhelp.ru/by-example-chtml-dropdownlist/page/ ;)
Мой маленький блог - http://dbhelp.ru
ostin
Сообщения: 83
Зарегистрирован: 2009.10.10, 15:55
Контактная информация:

Re: Вывод списка

Сообщение ostin »

Ozzy писал(а):Вот спецально переводил http://dbhelp.ru/by-example-chtml-dropdownlist/page/ ;)
Я ценю проделанную работу, спасибо за отличные переводы, да, но нигде я не могу найти описания или использования переменной $select в контексте dropDownList($name,$select,$data)
Единственное, что про нее известно, цитирую "$select - Выбранный элемент по умолчанию (из $data)".

Имеем:

Код: Выделить всё

$data = $model->findAll(); 
//$data = array("3"=>"black", "5"=>"blue")    
я пробовал в качестве $select передавать "3", 3, array("3"=>"black"), "black", а так же возможные комбинации ссылки на экземпляр модели $model. Во всех перечисленных случаях ошибки :(
Причем, если целенаправленно передавать null или 0 или "", что по логике получается отсутствие выбранного по умолчанию элемента - опять же ошибка.

Во всех примерах содержимое $select остается за кадром.
То ли лыжи не едут, то ли ... :x


P.S. а почему тема перенесена в общие вопросы по PHP, вроде прямое отношение к фреймворку :)
ostin
Сообщения: 83
Зарегистрирован: 2009.10.10, 15:55
Контактная информация:

Re: Вывод списка

Сообщение ostin »

UPD: в англ. документации прямо сказано, что в $select содержится необходимый ключ из массива $data
2Ozzy » дополните этой строчкой ваш перевод, если не сложно.
<?php echo CHtml::dropDownList('listname', $select, array('M' => 'Male', 'F' => 'Female'));
The $select parameter must contain value 'M' or 'F'.
Не работает :evil:
Пойду досконально проверять все переменные :ugeek:
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Вывод списка

Сообщение samdark »

Перенёс обратно.
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Вывод списка

Сообщение Ozzy »

ostin писал(а):UPD: в англ. документации прямо сказано, что в $select содержится необходимый ключ из массива $data
2Ozzy » дополните этой строчкой ваш перевод, если не сложно.
<?php echo CHtml::dropDownList('listname', $select, array('M' => 'Male', 'F' => 'Female'));
The $select parameter must contain value 'M' or 'F'.
Не работает :evil:
Пойду досконально проверять все переменные :ugeek:
Спасибо, дополню

Уву, в селекте ключ который надо выбрать по умолчанию. Для вашего случая там будет ID записи в базе (в таблице той модели которую вы передаете)
Мой маленький блог - http://dbhelp.ru
Ответить