我有这个奇怪的问题,我的控制器方法一直工作,直到它必须返回一个视图。
我有一条路线
Route::put('/project/complete/{id}','ProjectController@complete');
此路线指向@complete:
public function complete($id){
$project = Project::find($id);
$project->completed = 1;
$project->save();
return view('user.projects.project-complete', compact('project'));
}
基本上,这样做只是从数据库更新一个字段,但我是用ajax做的:
$(".mark-complete").click(function(){
var id = $(this).data("id");
var url = "/project/complete/"+id;
var token = $(this).data("token");
$.ajax({
url: url,
type: 'PUT',
data: {
"id": id,
"_method": 'PUT',
"_token": token,
},
success: function ()
{
console.log("Worked.");
}
})
});
现在,这样可以正常更新字段。问题是,在$ project-> save()之后,我返回一个视图,你可以看到..事情是,该视图永远不会被返回。单击按钮后,该字段会更新,但我仍然在同一页面上,我没有返回任何内容。 我检查了路线和视图,一切都拼写正确。这可能是什么问题?