Я пытаюсь внедрить систему лайков для моего веб-приложения Laravel.Это рецепт приложения.Чтобы создать систему лайков, я использую AJAX (моя предыдущая система лайков была просто через Laravel, используя Many-to-Many, но это требовало загрузки страницы для каждого лайка).Проблема, которую я получаю, это внутренняя ошибка сервера 500, когда я нажимаю кнопку «Мне нравится», и я не знаю почему.Я возился с этим часами и ничего не могу из этого извлечь.
AJAX
// Likes AJAX
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
var recipeId = 0;
$('.like').on('click', function(event){
event.preventDefault();
recipeId = event.target.parentNode.parentNode.dataset['recipeId'];
var isLike = event.target.previousElementSibling == null;
$.ajax({
method: 'POST',
url: urlLike,
data: {isLike: isLike, recipeId: recipeId},
headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')}
})
.done(function(){
event.target.innerText = isLike ? event.target.innerText == 'Like' ? 'You like this' : 'Like':
event.target.innerText == 'Unlike' ? 'You like this' : 'Unlike';
if(isLike){
event.taget.innerText = 'Unlike';
} else {
event.taget.innerText = 'Like';
}
});
});
Blade / View
{{-- Likes --}}
@if (Auth::check())
<div>
<button class="like" data-recipeId="{{$recipe->id}}">Like!</button>
<span id="likes-count-{{$recipe->id}}"></span>
</div>
@else
<div>
<a href="{{route('login')}}">
<button>Like It!</button>
</a>
<a href="{{route('login')}}">
<button>Unlike It!</button>
</a>
</div>
@endif
В мой файл раскладок включено следующее:
<script>
var urlLike = '{{ route('like') }}'
</script>
<script src="/js/custom.js"></script>
<meta name="csrf-token" content="{{ csrf_token() }}">
Кто-нибудь знает, с чего мне начать поиск ошибки и как мне ее исправить?Если вам нужно больше кода, такого как мои контроллеры или модели, пожалуйста, дайте мне знать.