Я получил эту ошибку при работе, когда я использую MySQL вместо SQLite. Я получил ошибку, которой раньше никогда не получал.
Когда я пытаюсь отправить данные через форму, я получаю следующее исключение:
Argument 1 passed to Illuminate\Database\Grammar::parameterize() must be of the type array, string given
Вот код, который я использую для помещения данных внутри базы данных:
public function store(Request $request)
{
if(isset($request['recommended'])) {
$request['recommended'] = true;
} else {
$request['recommended'] = false;
}
$validated = $request->validate([
'title' => 'required|string',
'recommended' => 'required|boolean',
'us' => 'string',
'ca' => 'string'
]);
$item = new Item();
$item->fill($validated);
$item->save();
$validated['item_id'] = $item->id;
ItemLink::create($validated);
return redirect()->route('items.index');
}
Кажется, что произошла ошибка в строке $ item-> save ();
Я попытался вывести свою переменную $ validated, вот ее содержимое:
array:4 [
"title" => "Echo Show 8"
"recommended" => false
"us" => "asdaksjdkasj"
"ca" => "asdasdsad"
]
Я понял, что должен передать массив, но я просто не понимаю, почему и как ..