Что-то я недопонимаю в следующем:
// в POST $model->name пришло любое значение
$model->name = 'test';
print_r($model->name); // Вывод 'test'
// в POST $model->content['image'] пришло пустое значение
$model->content['image'] = UploadedFile::getInstance($model,'content[image]');
// или $model->content['image'] = 'любойтекст';
print_r($model->content['image']); // Вывод пустой
На rules
можно не ориентироваться
В поле content
я храню различные значения, которые не требуются для построения запросов к базе, это могут быть мета-теги, изображения. Потом в BeforeSave я массив $this->content перекодирую в JSON и добавляю в базу.
Как видно из кода выше, я просто не могу переназначить любой элемент массива $model->content, но могу переназначить любое свойство $model только первого уровня
Ну вам ничего не пришло, вот оно и пустое. Идем в код и смотрим что возвращает getInstance https://github.com/yiisoft/yii2/blob/master/framework/web/UploadedFile.php#L110 Если файл пришел(content[image] должен быть именно файлом), то возвращает объект UploadedFile иначе null.
var_dump($model->content['image']);//null
Нашел способ
$content = $model->content;
$content['image'] = 'bla-bla-bla';
$model->content = $content;
Проблема в __get и __set родителей, видимо сеттер некорректно работает со свойствами 2ого уровня
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
С minishop2 раньше не работалКак можно реализовать функционал для товаров с разными ценами(скидкой) в зависимости от вида как на этой странице...
Необходимо составить запрос который ищет возможные совпадения, но надо что бы он срого учитывал 2 условия