@AlexWeb6667
Web-дизайнер с опытом FullStack разработки

Как передать массив значений через Active Form?

Привет)Всех с прошедшими праздниками)Народ подскажите где на лажал? Хочу передать массив значений в форму(Номера телефонов) передавал уже, сохранялось в базу все норм, но потом чет на воротил вернуть не могу))

Есть модель:

class FalseBase extends ActiveRecord
{


    public $phone;
    public $image;

    public static function tableName()
    {
        return 'false_base';
    }

//  Правила формы
    public function rules()
    {
        return [

            [['description'], 'string'],
            [['name'], 'string', 'max' => 255],
            [['phone'], 'string'],
            [['image'], 'file', 'extensions' => 'png, jpg'],
            }
}


Где $Phone массив значений;

Передаю форму без $phone, сохраняет,
передаю так
<?= $form->field($model, 'phone[]')->textInput(['multiple' => true,'maxlength' => true, 'placeholder' => 'Номер телефона'])->label(false) ?>


Не сохраняет, ошибок нет, но в логах пишет валидация не прошла;

Передаю не как массив ($model, 'phone') работает. Но до этого все работало с массивом

уже и в модели менял как public $phone = [];

Все равно ошибка валидации и все, в чем ошибся то?
  • Вопрос задан
  • 84 просмотра
Решения вопроса 1
qonand
@qonand
Software Engineer
передаете массив, а в моделе в правилах валидации указываете что phone это строка. Для массивов нужно использовать each-валидатор
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы