[Laravel] 配列エラー array to string conversion
解決したいこと
Laravel6にてレシピアプリを開発中です。
1つのレシピに対して複数の材料(材料名、数量、単位)を登録しようとしたところエラーを吐きました。
配列の使い方がうまく理解できておらずご教授お願い致します。
発生している問題・エラー
レシピを追加ボタンを押したところで以下のエラーが発生します。
ErrorException
Array to string conversion
該当するソースコード
creare . blade.php
<div class="form-group"
>
<label>材料
<input class="form-control" type="hidden" name="recipe_id" value="">
<div class="materials">
<input class="form-control" type="name" name="name[][material_name]" placeholder="材料名">
<input class="form-control" type="text" name="material[][amount]" placeholder="分量">
<select class="form-control" name="material[][unit]">
@foreach($units as $unit)
<option value="{{ $unit->name }}">{{ $unit->name }}</option>
@endforeach
</select>
<input type="button" value="+" class="add pluralBtn">
<input type="button" value="-" class="del pluralBtn">
</div>
</label>
</div>
<div class="form-group">
<label>
作り方
<textarea class="form-control process" name="process" cols="100" rows="10"></textarea>
</label>
</div>
RecipeController.php
public function store(RecipeRequest $request)
{
$user = \Auth::user();
$path = $this->saveImage($request->file('image'));
$recipe = Recipe::create(
[
'user_id' => auth()->id(),
'name' => $request->name,
'category_id' => $request->category_id,
'image' => $path,
'process' => $request->process,
]);
$recipe->materials()->createMany([
[
'name' => $request->input('name.0.material_name'),
'recipe_id' => $recipe->id,
'amount' => $request->input('material.0.amount'),
'unit' => $request->input('material.0.unit'),
],
]);
0