Есть представление в котором создается GriedvView
GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
[
'format' => 'text',
'attribute' => 'Дата изменения',
'value' => date('Y', $tdNews->cdate)
],
[
'format' => 'text',
'attribute' => 'Дата публикации',
'value' => date('Y/m/d', $tdNews->cdate)
],
[
'format' => 'text',
'attribute' => 'Прежний заголовок',
'value' => $news->name
],
[
'format' => 'text',
'attribute' => 'Новый заголовок',
'value' => $tdNews->news_name
],
[
'format' => 'text',
'attribute' => 'Автор заметки',
'value' => $tdNews->user_id
],
['class' => 'yii\grid\ActionColumn'],
],
]);
Данные в него попадают через контроллер вот так
public function actionList() {
$model = new ThisDay;
$searchModel = new ThisDay;
$dataProvider = $searchModel->search(Yii::$app->request->getQueryParams());
$editNews = Yii::$app->request->post('ThisDay');
foreach ($editNews["news_name"] as $year => $name) {
foreach ($name as $newsId => $text) {
$news = News::findNews($newsId);
$model->news_name = $text;
$model->old_name = $news->name;
$model->user_id = Yii::$app->user->id;
}
$model->save();
}
return $this->render('list', ['model' => $model, 'editNews' => $editNews, 'year' => $year, 'name' => $name, 'dataProvider' => $dataProvider,
'searchModel' => $searchModel]);
}
не обращайте внимания на код сохранения данные, суть не в нем. Суть в том, что при попытке открыть представление с GridViews получаю ошибку представленную на рисунке ниже
Из нее следует что GridView делает примерно следующее 'value' => обращаюсь к полю модели беря за название поля то, что после "=>"
Вопрос: почему он поступает именно таким образом? Разве он не должен просто подставлять данные из value в качестве информации в GridView и как можно исправить ошибку?
Попробуйте в value
передавать анонимную функцию (по идее так и нужно).
Пример:
'value' => function($data) {
//здесь в $data будет текущий объект из $dataProvider
return date('Y', $tdNews->cdate);
}
P.S. Не совсем понятно, откуда берётся $tdNews
в Вашем примере, и что внутри него.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте,есть данный фрагмент кода,до конца не могу понять,что он выполняетмогли бы объяснить,что он делает? и есть ли возможность его...
Применяю std::remove_reference_t для выделения памяти под тип указателя, те
Как включить подчеркивание ошибок красными волнистыми линиями в QT Creator?
Есть ли существенные отличия между двумя стандартами c++14 и gnu++14 (расширение GNU)? Имеет ли смысл для компиляции под линуксом придерживаться...