我正在使用Yii2 REST api
并使用Authorisation : Bearer
进行身份验证。Yii2 rest api更新抛出objet转换错误
我有一个模型Event
只有2行动Create
和Update
但我Update
动作不工作的罚款,并抛出对象类转换错误。
我正在使用以下代码来查找混合条件的Event
模型。
public function actionUpdate($id)
{
$params=$_REQUEST;
/*Following line throws error */
$model = Event::find()->where(['event_id'=>$id])->andWhere(['partner_id'=> Yii::$app->user->identity]);
if($model !== null){
$model->attributes=$params;
$model->partner_id = Yii::$app->user->id;
$model->updated_date = time();
if ($model->save()) {
$this->setHeader(200);
echo json_encode(array('status'=>1,'data'=>array_filter($model->attributes)),JSON_PRETTY_PRINT);
}
}
}
的错误是这样的
类API的对象\模块\ V1 \型号\用户不能转换成字符串
我无法弄清楚,为什么它说我创建了User
类的对象。
谢谢你的时间,但那不是我目前的问题。 –
我认为问题出现在你的'andWhere()'条件中。你已经使用了'Yii :: $ app-> user-> identity',其中'identity'是一个完整的对象,它有关于登录用户的数据。所以它应该像'Yii :: $ app-> user-> identity-> anyAttributeFromUserTable' –
我认为这是问题,但随着更新行动我有'PUT'和'PATCH'请求的问题。我似乎没有通过'PUT'请求发送任何数据。 –