当我尝试设置复选框列表按钮时,我不断收到错误消息“数组到字符串的转换”。
这是我的复选框代码
$list = [0 => '8:00-9:00', 1 => '9:00-10:00', 2 => '10:00-11:00', 3 => '11:00-12:00', 4 => '12:00-13:00', 5 => '13:00-14:00', 6 => '14:00-15:00', 7 => '15:00-16:00', 8 => '16:00-17:00', 9 => '17:00-18:00'];
此字段
<?= $form->field($model, 'available')->checkboxlist($list);?>
我不知道错误来自何处以及怎么办
这是我的模型代码
<?php
namespace frontend\models;
use Yii;
/**
* This is the model class for table "timetable".
*
* @property int $id
* @property string $username
* @property string $day
* @property string $available
* @property string $notAvailable
*/
class Timetable extends \yii\db\ActiveRecord
{
/**
* @inheritdoc
*/
public static function tableName()
{
return 'timetable';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['username', 'day', 'available', 'notAvailable'], 'required'],
[['available', 'notAvailable'], 'safe'],
[['username', 'day'], 'string', 'max' => 10],
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'username' => 'Username',
'day' => 'Day',
'available' => 'Available',
'notAvailable' => 'Not Available',
];
}
}
有人可以告诉我我做错了什么吗?
error trace 1 error trace 2 error trace 3 error trace 4 error trace 5
答案 0 :(得分:0)
根据yii2 guide,复选框列表允许多项选择,因此对应的提交值是数组。
您的代码可与textInput一起使用,因为它的结果不是数组。
您可以使用implode()
之类的php数组函数将值转换为字符串。