gpt4 book ai didi

javascript - Action 拒绝返回 bool 值

转载 作者:行者123 更新时间:2023-11-30 16:02:26 26 4
gpt4 key购买 nike

我有标准的 destroy Action :

public function destroy($id)
{
return Quiz::find($id)->delete();
}

通过以下 AJAX 调用访问:

// The CSRF token is included automatically!
$.ajax({
url: /quiz/10,
type: 'POST',
data: {_method: 'DELETE'},
success: function(response){
if(response){
// do stuff..
}
}
});

问题

进行 AJAX 调用时,chrome 控制台显示以下错误:

enter image description here

奇怪的是,如果我删除return一切正常,但我需要返回状态代码。有人可以解释为什么会这样吗?或者,至少,如何调试这个问题?

更新

如果我像这样重写 destroy 操作,一切都会开始正常工作:

public function destroy($id)
{
return Quiz::delete($id);
}

但是我还是不明白为什么第一个 Action 不行?

最佳答案

您不能返回 bool 值(Quiz::find($id)->delete(); 返回 truefalse), 最好像下面那样做,

$deleted =  Quiz::find($id)->delete(); //this will return true/false

return response()->json(['success' => $deleted]);

在前端

$.ajax({
url: /quiz/10,
type: 'POST',
data: {_method: 'DELETE'},
success: function(response){
if(response.success == true){
// do stuff..
} else {
// something went wrong when deleting the record.
}
}
});

关于javascript - Action 拒绝返回 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37516686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com