githubjeka / yii2-tutorial

Yii2 учебное руководство, мануал по созданию сайта на русском языке.
Other
133 stars 31 forks source link

Сохранение реляционных данных. #7

Closed des1roer closed 9 years ago

des1roer commented 9 years ago

в \yii2-tutorial\yii2-app-advanced\backend\views\star_form.php можно поправить

 use yii\widgets\ActiveForm; //изменить на use yii\bootstrap\ActiveForm;
des1roer commented 9 years ago
    $stars = [];

    foreach (Star::find()->all() as $star){
        $stars[$star->id] = $star->name;
    }

    echo $form->field($model, 'planet')->dropDownList($stars);

изменить на

$stars = [];

foreach (Star::find()->all() as $star)
{
    $stars[$star->id] = $star->name;
}

echo $form->field($model, 'star_id')->dropDownList($stars, array('prompt' => ''));

и сказать что нужно использовать

       use common\models\Star;
des1roer commented 9 years ago

а для использования хелпера его нужно подключить

        use yii\helpers\ArrayHelper;
des1roer commented 9 years ago

онечно, вы можете обойтись без переменной $stars, записав этот код одну строку. Ну и после всего, для этой формы попробуйте использовать horizontal:

<?php $form = ActiveForm::begin(['layout' => 'horizontal',]); ?>

не забыть

        use yii\bootstrap\ActiveForm; //изменить yii\widgets\ActiveForm на use yii\bootstrap\ActiveForm;