Попытка сделать раскрывающийся список, на мой взгляд, заполненный данными из таблицы базы данных под названием «Категория». Однако это не работает, и ничего не заполняется.
Контроллеры\CasesController:
public function actionIndex()
{
$searchModel = new CaseSearch();
$allCategory = new Category;
$allCategory = Category::findAllCategories();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$post_obj = Yii::$app->request->post();
$category=1;
if(isset($post_obj['CaseSearch']['category'])){
$category = $post_obj['CaseSearch'];
$dataProvider = $searchModel->searchByCategory($category);
}
$searchModel->category = $category;
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'post' => $post_obj,
'allCategory' => $allCategory
]);
}
модели\Категория:
class Category extends \yii\db\ActiveRecord
{
public $id;
public $name;
/**
* @inheritdoc
*/
public static function tableName()
{
return 'Category';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['id'], 'integer'],
[['name'], 'required'],
//[['LastEdited', 'Published'], 'safe'],
[['name'], 'string', 'max' => 45]
];
}
public static function findAllCategories()
{
Category::find()->indexBy('id')->all();
return self::find();
}
Просмотр:
echo $form->field($searchModel, 'newcategory')
->dropDownList(
$allCategory // Flat array ('id'=>'label')
);
Любая идея, почему это не работает?