php - Laravel 5.8 Posting Likes with AJAX call给了我内部服务器错误500
问题描述
我正在尝试为我的 Laravel 网络应用程序实现一个喜欢系统。这是一个食谱应用程序。为了构建点赞系统,我使用了 AJAX(我之前的点赞系统只是通过 Laravel 使用多对多,但每次点赞都需要加载页面)。我遇到的问题是每当我点击“赞”按钮时都会出现内部服务器错误 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';
}
});
});
刀片/视图
{{-- 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() }}">
有谁知道我应该从哪里开始搜索错误以及我应该如何纠正它?如果您需要更多代码,例如我的控制器或模型,请告诉我。
解决方案
推荐阅读
- yaml - 如何在 mulesoft 清单的 yml 中导入或包含另一个 yml 文件
- selenium - Selenium Google 趋势自定义期
- python - python多重排序的问题。字母降序
- highcharts - 如何以编程方式在地图上选择点?
- python - 在 dict 上应用具有多个参数的 pool.starmap() 函数,这些参数都作为 .starmap() 内部的参数传递
- variables - 如何在groovy中定义变量黄瓜步骤?
- c# - 按钮不调用 OnPointerDown() 方法
- c# - c# 堆栈中的编码错误任何人都可以看看这个
- excel - 根据表格标题自动在单元格中输入日期/时间戳的代码
- r - R:如何基于回归模型(glmm)对数据框进行子集化