Php 如何使用find方法进行建模
我的控制器中有actionView($id)方法。并且有2个模型的帖子和用户,我想得到一个帖子(用户['name'])。我有一个主gridview,当点击该项目时,其url如下: 最后一个1是this$id参数。 现在我的方法是:Php 如何使用find方法进行建模,php,yii,yii2,Php,Yii,Yii2,我的控制器中有actionView($id)方法。并且有2个模型的帖子和用户,我想得到一个帖子(用户['name'])。我有一个主gridview,当点击该项目时,其url如下: 最后一个1是this$id参数。 现在我的方法是: public function actionView($id) { if(Yii::$app->user->isGuest) { return $this->redirect(['login']
public function actionView($id)
{
if(Yii::$app->user->isGuest)
{
return $this->redirect(['login']);
}
else
{
$data = Posts::find($id)->joinWith('user');
return $this->render('detail',['data'=>$data]);
}
}
但我有一个错误:
Setting unknown property: yii\widgets\DetailView::0
您必须在Posts模型中定义关系,如下所示:
public function getUser()
{
return $this->hasOne(User::className(), ['id' => 'user_id']);
}
之后,您可以使用以下命令获取用户:
Posts::find($id)->with('user')
您可以在文档中找到它:
您必须在Posts模型中定义关系,如下所示:
public function getUser()
{
return $this->hasOne(User::className(), ['id' => 'user_id']);
}
之后,您可以使用以下命令获取用户:
Posts::find($id)->with('user')
您可以在文档中找到它:
哪个控制器引用ActionView代码。请更新您的问题并添加您的Post模型代码..哪个控制器引用ActionView代码。请更新您的问题并添加您的发布模型代码..我正尝试这样做,但在获取未知属性时出错:yii\db\ActiveQuery::id@Rosti,您是否可以调试以查看发生错误的行?在控制器或视图中。以及数据是否已成功地从数据库查询,如果是这种情况,我们可以假定错误已在视图中。我正尝试这样做,但在获取未知属性:yii\DB\ActiveQuery:时出错:id@Rosti,您是否可以调试以查看发生错误的行?在控制器或视图中。以及数据是否已成功地从数据库查询,如果是这种情况,我们可以假定错误已在视图中。