如何在yii 2.0中使用dropDownList()并从数据库中获取值?

时间:2014-10-24 07:14:17

标签: php yii2 yii-components

我做了我的表格:

<?php

use yii\helpers\Html;
use yii\widgets\ActiveForm;

/* @var $this yii\web\View */
/* @var $model app\models\FuelEnter */
/* @var $form ActiveForm */
?>
<div class="enterfuel">

    <?php $form = ActiveForm::begin(); ?>

        <?= $form->dropDownLst($model, Html::listData(Forms::model()->findAll(),'trans_id','id')) 
//I want to make 'name' be selected from table Transport
            ?> 
        <?= $form->field($model, 'average') ?>
        <?= $form->field($model, 'urban') ?>
        <?= $form->field($model, 'comb') ?>

        <div class="form-group">
            <?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
        </div>
    <?php ActiveForm::end(); ?>

</div><!-- enterfuel -->

我想使用下拉列表并从数据库中选择值。我有2个表 Transport fuel_usage 。 如何从“运输”列中填写dropDownList&#39; name&#39;值?并将表单结果保存到Fuel_usage表格,以便运输公司的ID&#39; +3输入字段?

Transport {transID, name}

Fuel {id,average, comb, urban}

1 个答案:

答案 0 :(得分:2)

您的问题是关于Yii2,但您的代码是Yii1。 所以我会按照你的要求回答。在我回答你必须知道一件事之前,DropdownList是视图的一部分,而不应该是获取数据的部分。视图用于显示数据。通过控制器在模型中获取并在视图中显示它们。

所以要回答你的问题,假设该表的模型使用它来获取所有数据。

请注意,Yii2中没有listData,而ArrayMap :: map替换了相同的功能。如果这是你的问题,那么它是How to make a drop down list in yii2?的副本

你的问题不明确且模棱两可,所以我不能超越这个!