如何显示从数据库表到下拉列表yii2的时间?

时间:2018-11-19 11:55:50

标签: php phpmyadmin yii2 yii2-advanced-app

这是我的下拉列表Time的表单字段

<?= $form->field($model, 'Time')->widget(Select2::classname(), [
            'data' => ArrayHelper::map(Schedule::find()->where(['username' => 'cust_id', 'day'=>'Day_cust','availability'=>'available'])->all(),'time','time'),
            'language' => 'en',
            'options' => ['placeholder' => 'Select available time ...'],
            'pluginOptions' => [
            'allowClear' => true
            ],
        ]);
        ?> 

Day_custcust_id取自先前输入的文本,格式与用户输入的字段相同。

我尝试了上面的代码,但是无法显示可用时间。

这是我的时间表模型

public function attributeLabels()
{
    return [
        'schedule_id' => 'Schedule ID',
        'username' => 'Username',
        'day' => 'Day',
        'time' => 'Time',
        'availability' => 'Availability',
    ];
}

我想要的是我要在time的下拉列表中显示基于availablecust_id的可用性day在数据库中输入的时间由用户在字段中插入。

我应该怎么做?

如果有人想知道为什么我不使用依赖的dropdownlist是因为cust_id使用的文本输入与当天相同。我没有同时使用ddl。

1 个答案:

答案 0 :(得分:0)

请确保您在ArrayHelper::map()中使用了正确的数据库字段值。

您的数据库字段包含time而不是Time,因此ArrayHelper应该像

ArrayHelper::map(Schedule::find()->where(['username' => 'cust_id', 'day'=>'Day_cust','availability'=>'available'])->all(),'time','time')
相关问题