小编Vra*_*shi的帖子

Laravel仅考虑请求中的必需列,并忽略任何其他键值(如果存在)

在Laravel API中,我传递了带有少量其他key:values的请求输入json,这些是我在API函数的业务逻辑的其他部分中所需要的。当我将Controller函数$request->all()的形式参数的array传递Request $request给Model函数并将其直接传递给Eloquent create()函数时,如下所示:

StatusModel::create($request);
Run Code Online (Sandbox Code Playgroud)

我得到错误,

SQLSTATE [42S22]:找不到列:1054“字段列表”中的未知列“ app”(SQL:更新tbl_pointsteam_id= 4,tour_id= 10, match_id= 254,win= 0,loss= 1,tie= 1,n_r= 1,pt= 1,nrr= 1 app= 3,其中(team_id= 4且tour_id= 10且 match_id= 254))。

我想按原样传递输入请求数组,并希望laravel忽略数据库中不存在的数组中的列名称键。EG:以下是我的输入json,其中“ app”:3是表中不存在的额外键值。

{
"team_id": 4,
"tour_id": 10,
"match_id": 254,
"win": 0,
"loss": 1,
"tie": 1,
"n_r": 1,
"pt": 1,
"nrr": 1,
"app": 3
}
Run Code Online (Sandbox Code Playgroud)

我的模型代码 …

php laravel laravel-5 laravel-5.4

4
推荐指数
1
解决办法
3851
查看次数

标签 统计

laravel ×1

laravel-5 ×1

laravel-5.4 ×1

php ×1