Gerard van den Bosch Gerard van den Bosch - 1 year ago 130
PHP Question

yii2 foreign key dropdown

I am trying to display a dropdown with a category list in yii2 framework.

The tables in my database are setup with foreign key and used Model and Crud generator to generate the code.

I am trying to edit the code now to change the textfield into a dropdown with the values from the category table.

<?php $categoryArray = ArrayHelper::map(\app\models\Category::find()->orderBy('name')->all(), 'id', 'name') ?>
<?= $form->field($model, 'category_id')->dropDownList($categoryArray, ['prompt' => '---- Select category ----'])->label('category') ?>

This comes back with the error "2.yii\base\ErrorHandler::handleFatalError()"

Most related post to my problem refer to version 1 of the framework but can't find a good example how to do this with version 2.

Answer Source

I overlooked the error on top saying 'Class ArrayHelper not Found' this has been resolved by adding the following line on top:

use yii\helpers\ArrayHelper;