Я пытаюсь создать динамическую таблицу с помощью ajax / jquery.
После отображения результатов поиска я хочу, чтобы в каждой строке были такие действия, как редактирование и удаление, которые будут отвечать за каждую запись. Это мой метод управления
public function search(Request $request){
if($request->ajax()){
$output="";
// $users=DB::table('users')->where('user_id','LIKE','%'.$request->search."%")->get();
$grammar_cards = FlashCard::where('lang','=','gr')
->where(function($query) use ($request){
$query->where('word','LIKE', '%'.$request->search.'%')
->orWhere('option1','LIKE', '%'.$request->search.'%')
->orWhere('option2','LIKE', '%'.$request->search.'%')
->orWhere('option3','LIKE', '%'.$request->search.'%')
->orWhere('option_correct','LIKE', '%'.$request->search.'%')
->orderBy('class')
->orderby('unit_id');
})->paginate(20);
// $flashcards->setPath('custom/url');
if($grammar_cards){
foreach ($grammar_cards as $key => $grammar_card) {
$grammarcard_question = $grammar_card->word;
$grammarcard_ch1 = $grammar_card->option1;
$grammarcard_ch2 = $grammar_card->option2;
$grammarcard_ch3 = $grammar_card->option3;
$grammarcard_correctchoice = $grammar_card->option_correct;
$grammarcard_unit = $grammar_card->unit_id;
$grammarcard_class = $grammar_card->class;
$output.='<tr>'.
'<td>'.$grammarcard_question.'</td>'.
'<td>'.$grammarcard_ch1.'</td>'.
'<td>'.$grammarcard_ch2.'</td>'.
'<td>'.$grammarcard_ch3.'</td>'.
'<td>'.$grammarcard_correctchoice.'</td>'.
'<td>'.$grammarcard_unit.'</td>'.
'<td>'.$grammarcard_class.'</td>'.
'<td style="display:flex;">
<a href="/admin/grammar/'.$grammar_card->id.'/edit" style="margin-right:10px;"><button class="btn btn-info">რედაქტირება</button></a>
<form action="{{ route(\'grammar.destroy\', '.$grammar_card->id.')}}" method="post">
@csrf
@method(\'DELETE\')
<button class="btn btn-danger" type="submit">delete</button>
</form></td>'.
'</tr>';
}
return Response($output);
// return view('admin.grammar.index', ['output' => $output])->render();
}
}
}
Это мой маршрут
Route::resource('/admin/grammar', 'GrammarController');
Это мой метод уничтожения
public function destroy($id)
{
$grammar_card = FlashCard::find($id);
$grammar_card->delete();
return redirect('admin/grammar')->with('success', 'successfully deleted');
}
Это мой вывод
Он печатает @csrf @method ('DELETE') в виде текста, а также кнопку удаления
Когда я нажимаю кнопку удаления , она переходит к URL localhost: 8000 /admin /% 7B% 7B% 20route ('grammar.destroy',% 2040271)% 7D% 7D и выводит ошибку 419
Подскажите, пожалуйста, как решить эту проблему?