我想在一个名为creaChecklist()的方法中插入两个参数,这个方法存入方法store()但是无法识别。
方法一:
public function creaChecklist($subcategoriaID, $richiesta_id){
$processo_id = \App\SubCategoria::find((int)$subcategoriaID)->processo_id;
$fasiprocesso = DB::table('fasi_processo')->where('processo_id',$processo_id)->get();
foreach($fasiprocesso as $faseprocesso){
DB::table('checklists')->insert(
[
'richiesta_id' => $richiesta_id,
'nome' => $faseprocesso->nome,
'descrizione' => $faseprocesso->descrizione,
'posizione' => $faseprocesso->posizione,
'isCheck' => 0,
]
);
}
}
方法二:
public function store(Request $request)
{
$this->validate($request,[
'categoria'=>'required',
'subcategoria'=>'required',
'oggetto'=>'required'
],
[
'categoria.required'=>'La categoria é obbligatoria',
'subcategoria.required'=>'La sotto categoria é obbligatoria',
'oggetto.required'=>'L\'oggetto é obbligatorio'
]);
$richiesta = new \App\Richiesta();
$richiesta->user_id = Auth::user()->id;
$richiesta->nome = Auth::user()->nome;
$richiesta->cognome = Auth::user()->cognome;
$richiesta->categoria = $request->input('categoria');
$richiesta->subcategoria = $request->input('subcategoria');
$richiesta->oggetto = $request->input('oggetto');
$richiesta->save();
$richiesta_id = $richiesta->id;
$subcategoriaID = $request->get('subcategoria');
$this->creaChecklist($subcategoriaID,$richiesta_id);
return redirect('/le_mie_richieste');
}
重要: 我使用dd(),我看到参数在那里!如果我把静态int参数所有方法都工作。
解: 要允许接受参数,必须将其转换为int。
$subcategoriaID = (int)$request->get('subcategoria');