return $this->hasMany(FileUsage::className(), ['usage_id' => 'id'])
->select('f.id, f.user_id, f.type_id, f.name, f.mime, f.size, fu.usage_id')
->alias('fu')
->leftJoin('file f', 'f.id = fu.file_id')
->where(['in', 'f.type_id', $fileTypes])
->andWhere(['fu.is_deleted' => FileUsage::IS_NOT_DELETED])
->orderBy(['fu.id' => SORT_DESC])
->limit(1);
}
public function fields()
{
$fields = [
'id',
'user_id',
'type_id',
'title',
'short_title',
'description',
'email',
'status',
'updated_by',
'created_at',
'updated_at'
];
return $fields;
}
public function extraFields()
{
return [
'product_type' => function($model) {
return $model->type;
},
'files' => function($model) {
return $model->files; // и вот сюда надо файлы засунуть
}
];
}
Опишите подробней задачу, дополните вопрос.
Я через rest запрашиваю модель Product
[
[0] => [
'id' => 1 (таблица file)
'type_id' => 1 (таблица file)
'usage_id' => 1 (таблица file_usage)
],
[1] => [
'id' => 1 (таблица file)
'type_id' => 1 (таблица file)
'usage_id' => 1 (таблица file_usage)
],
]