我有一个将id作为参数的函数,并使用DB方法更新db。但是,当我运行代码时,变量没有传递给方法。测试,我用一个整数替换$ id,它工作,所以我认为DB方法无法从参数访问变量
public function disable($id)
{
// Update the user status to 0 from 1
DB::table('employees')->where('id', $id)->update(['status' => 0]);
return redirect('/employee')->with('error', 'User is disabled, all related accounts are now shutdown!...');
}
更新: 忘记提到我已经检查了,并且param进入函数内部,我可以返回方法之外的id
解 如注释中所示,varDump返回“id = 9”,其中我需要“9”,我注意到在我的代码的表单中,在id之前有一个额外的“id =”导致了故障。
答案 0 :(得分:1)
将功能用作disable(Request $request)
,并将ID设为$request->id
public function disable(Request $request)
{
// Update the user status to 0 from 1
DB::table('employees')->where('id', $request->id)->update(['status' => 0]);
return redirect('/employee')->with('error', 'User is disabled, all related accounts are now shutdown!...');
}