gpt4 book ai didi

javascript - Laravel 无法使用模态和 ajax 的增量方法添加数量

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

我用 laravel 制作了一个库存系统,我想在注册后在我的产品中添加一个数量,不幸的是我无法使用 laravel 中的 increment 方法更新或添加数量。此外,我使用模态和 ajax 来存储值。有人可以知道我的代码有什么问题吗?

错误代码 enter image description here enter image description here

Controller


public function stockIn(Request $request, $id){


$product = Product::findOrFail($id);
$data = $request->all();

$product['quantity'] = ($data->increment(['quantity']));


$product->save();

return response()->json($data);

}

模态


{{-- add qty --}}
<div class="modal fade" id="exampleModalCenter_qty" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalCenterTitle">Edit Product</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<p style="font-weight: bold;">Enter Quantity </p>
<input type="text" class="form-control" id="add_quantity"/>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-success" id="stockIn">Update</button>
</div>
</div>
</div>
</div>
{{-- add qty --}}

ajax脚本

  $('.addQty').on('click', function(e) {
const myValue = $(this).attr('id');
let qty = $(this).closest('tr').find('td:eq(5)').text();

$('#add_quantity').val(qty);


$('#stockIn').click(function(e) {
e.preventDefault();

let quantity = $('#add_quantity').val();

$.ajaxSetup({
headers:{
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});

$.ajax({
url: "{{ url('/addStocks') }}" + '/'+ myValue,
method: 'put',
data: {
name: quantity
},
success: function(res){
console.log(res);
window.location.href='{{route("product.index")}}';
}
})

});
});

路线

//addQty
Route::put('/addStocks', 'ProductsController@stockIn');

最佳答案

您需要在模型上调用 ->increment(),而不是请求。此外,您的命名有点奇怪,请求值作为 name 传递。

您可以考虑将数据属性的名称更改为 quantity

data: {
quantity: quantity
},

更新以在模型上调用 ->increment()

$product->increment('quantity', request('quantity'));

关于javascript - Laravel 无法使用模态和 ajax 的增量方法添加数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57932924/

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