将参数插入laravel方法

时间:2017-11-17 09:02:20

标签: php laravel methods laravel-5.3

我想在一个名为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');

0 个答案:

没有答案