我正在更新数据库中某些模型的值,但当我点击submit时,出现以下错误:
“消息:”,异常:“Symfony\Component\HttpKernel\exception\MethodNotAllowedHttpException”,文件:“C:\xampp\htdocs\Restaurante1\vendor\laravel\framework\src\light\Routing\RouteCollection”。php“,第255行”
这是我的JQuery代码:
var formData = new FormData();
formData.append('id', $(this).attr("data-id"));
formData.append('first', $('#schedules_morning').val());
formData.append('second', $('#schedules_night').val());
$.ajax({
async: true,
cache: false,
url: '/schedules',
type: 'PUT',
data:
{
formData
},
dataType: 'JSON',
processData: false,
contentType: false,
success: function (data) {
$('.form_valid_container').fadeIn().html('<span class="form_valid_text">✓ '+ data.success +'</span>');
form.trigger("reset");
console.log(data.success);
},
error: function (data){
var errors = data.responseJSON;
console.log(errors);
$.each(errors , function(){
$('.form_error_container').fadeIn().html('<span class="form_error_text">✘ '+ errors.message +'</span>')
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我正在将请求发送到资源控制器路由:
路由::资源('/schedules','ScheduleController');
public function update(Request $request)
{
$schedule = Schedule::findOrFail($id);
$schedule->morning = $request->morning;
$schedule->night = $request->night;
$schedule->save();
return response()->json([
'schedule' => $schedule,
'success' => 'Horario actualizado correctamente',
]);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
PHP(Laravel)只是欺骗PUT和DELETE请求,所以在laravel中的所有把请求,他们把一个隐藏的变量称为_method
与值把
和laravel验证该方法后请求。所以像下面这样替换你的代码,它应该可以工作。
var formData = new FormData();
formData.append('id', $(this).attr("data-id"));
formData.append('first', $('#schedules_morning').val());
formData.append('second', $('#schedules_night').val());
formData.append('_method', 'put');
$.ajax({
async: true,
cache: false,
url: '/schedules',
type: 'POST',
data:
{
formData
},
dataType: 'JSON',
processData: false,
contentType: false,
success: function (data) {
$('.form_valid_container').fadeIn().html('<span class="form_valid_text">✓ '+ data.success +'</span>');
form.trigger("reset");
console.log(data.success);
},
error: function (data){
var errors = data.responseJSON;
console.log(errors);
$.each(errors , function(){
$('.form_error_container').fadeIn().html('<span class="form_error_text">✘ '+ errors.message +'</span>')
});
}
});
我正在使用反应laravel一个简单的污秽应用程序。我正在使用Axios向服务器发出请求。GET, POST工作正常。我能够使用POST方法(axios.post)创建一个新项目。但是,当我尝试删除一个项目时,laravel抛出一个405错误,代表不允许的方法 这是我的路线:
对于控制器中的show($id)、edit($id)方法,它必须是数据库表中的“id”列吗 我想用数据库表中“post_id”列的值替换$id,但它引发错误: 如何修复它? 示例代码: 数据库表: id(int)、post_id(varchar32)、post_标题(varchar32)、post_内容(text) 路线: 路由::资源('posts','PostsController'); Po
在我的laravel项目中,我通过资源控制器插入数据。但是现在我想使用ajax请求,使用相同的路由和相同的资源控制器方法来插入我如何发送url以及如何向它发送表单数据。 路线 控制器 模型 添加表单div ajax函数的js代码
我有一个spring控制器,从那里返回一个字符串。基本上,我使用JSONObject和JSONArray,最后生成一个字符串并返回它。如: 但假设在生成这个JSONObject时,如果我得到任何异常,我希望返回该异常消息。即: 我的问题是,如何正确地将这个异常值作为错误返回,并从ajax调用错误函数中正确地获得这个值?
资源控制器 资源控制器可以让你轻松的创建RESTFul资源控制器,可以通过命令行生成需要的资源控制器,例如: // 生成index模块的Blog资源控制器 php think make:controller index/Blog 或者使用完整的命名空间生成 php think make:controller app\index\controller\Blog 然后你只需要为资源控制器注册一个资源路
问题内容: 我的控制器文件中包含以下内容: 我的服务器代码运行并返回: 但是我得到以下错误: 有人知道我在做什么错吗? 问题答案: 我只是更改为,因为期望一个对象并且期望一个数组。