我想问。在遇到无法获取ID的问题时,我遇到了整行。
public function store(Request $request)
{
$leave = $request->get('leave');
$leave['user_id'] = Auth::id();
$leave['status_id']= StatusType::find(1);
$leave = Leave::create($leave);
return Redirect::to(route('leave.create'));
}
显示的错误是
一般错误:1366不正确的整数值:'{“ id”:1,“状态”:“待处理”,“ created_at”:“ 2020-03-12 08:40:14”,“ updated_at”:“ 2020- 03-12 08:40:14“}”表示第1行的'status_id'列(SQL:插入
leaves
(type_id
,start
,end
,remarks
,user_id
,[C0 ],status_id
,updated_at
)值(1,2020-03-13,2020-03-14,test,2,created_at
,2020-03-13 07:58:17,2020-03-13 07:58:17))
我只需要获取ID而不是整个行。有人吗?
{"id":1,"status":"Pending","created_at":"2020-03-12 08:40:14","updated_at":"2020-03-12 08:40:14"}
将给您的对象不是整数值。现在只有更改将StatusType::find(1)
添加为coloumn_name
尝试如下。
StatusType::find(1)->coloumn_name
此行返回整个public function store(Request $request)
{
$leave = $request->get('leave');
$leave['user_id'] = Auth::id();
$leave['status_id']= StatusType::find(1)->id ?? 0;
$leave = Leave::create($leave);
return Redirect::to(route('leave.create'));
}
对象:
$leave
并且您的$leave['status_id']= StatusType::find(1);
字段可能是整数。因此,您需要像这样更改它:
status_id
将为您提供整数的输出。
有关官方$leave['status_id']= StatusType::find(1)->id;
的更多信息。