Ошибка 405 POST http://127.0.0.1:8000/posts/& 405 (Method Not Allowed) Laravel ajax
Подскажите пожалуйста я в этом новичёк. Пытаюсь сделать добавление комментариев без перезагрузки страницы через ajax, но ничего не получается, может я что то упускаю.
//blade
<form id="ajaxForm" onsubmit="return sendForm();">
<textarea name="message" class="textarea" rows="3"
placeholder="Напишите свой комментарий"></textarea>
<div class="mt-3">
<button class="btn btn-primary comment-button" id="saveBtn">Comment</button>
</div>
</form>
//script
$(document).ready(function() {
$('#saveBtn').click(function(e) {
e.preventDefault();
sendForm();
});
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$('#saveBtn').html('Отправить');
//Отправка на сервер данных
$('.error-message').html();
function sendForm() {
var formI = $('#ajaxForm')[0];
var form = new FormData(formI);
$.ajax({
url: '{{ url("/posts/' + slug + '/comments")}}',
method: 'POST',
processData: false,
contentType: false,
dataType: "json",
data: {form},
success: function(response) {
console.log(response.success)
},
error: function(xhr, status, error) {
console.log(error)
// if (error) {
// console.log(error.responseJSON.errors.message)
// $('#errorMessage').html(error.responseJSON.errors.message);
// }
},
});
return false;
}
});
//route
Route::group(['namespace' => 'Post', 'prefix' => 'posts'], function () {
Route::get('/', [\App\Http\Controllers\Post\IndexController::class, 'index'])->name('post.index');
Route::get('/{slug}', [\App\Http\Controllers\Post\ShowController::class, 'index'])->name('post.show');
Route::group(['namespace' => 'Comment', 'prefix' => '{slug}/comments'], function (){
Route::post('/', [\App\Http\Controllers\Post\Comment\StoreController::class, 'index'])->name('post.comment.store');
});
});
//StoreController
public function index(Post $post, StoreRequest $request)
{
$data = $request->validated();
$data['user_id'] = auth()->user()->id;
$data['commentable_id'] = $post->id;
Comment::create($data);
}