[英]get data related with yii2 on controller
我有这样的数据:
表反馈 ,具有实体: id_feedback (primary_key) , id_user (foreign key), feedback
。
表用户 ,实体: id_user (primary_key), user_name
。
用户有很多反馈,反馈有一个用户。
我在app/controller/feedback
创建json。
public function actionGetReplayFeedback($ID_KOMENTAR)
{
$replay = Feedback::find()->where('REPLAY_TO_ID = '. $ID_KOMENTAR)->all();
echo Json::encode($replay);
}
我得到json但没有得到username
。 如何获取username
?
您应该尝试:
public function actionGetReplayFeedback($ID_KOMENTAR)
{
\Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
return Feedback::find()->with(['user'])->where(['REPLAY_TO_ID'=>$ID_KOMENTAR])->asArray()->all();
}
阅读更多 :
soju是正确的,如果您只想选择某些列(因此不是模型反馈的所有列都返回用户),则可以将选择修改为如下所示
$items = \app\models\Feedback::find()
->with(['user' => function($q) {
$q->select(['id_user', 'username']);
}])
->select(['id_feedback', 'feedback'])
->where(['REPLAY_TO_ID'=>$ID_KOMENTAR])
->asArray()
->all();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.