我是 laravel 的新手,我正面临一个痛苦的问题。
我在我的电子商务 api 中使用Crinsane/LaravelShoppingcart,我试图在 vuejs 中使用 axios 发送一个发布请求,通过发送产品 ID 和数量将产品添加到购物车。问题是 id 和数量没有到达应用程序,尽管我很确定我在 axios 中指定了正确的路由链接并且我得到“没有模型 [App\Product] 的查询结果”。我假设这意味着处理请求的控制器功能正在工作,但 id 没有被发送/转换到资源集合。我不知道问题出在我正在使用的包还是代码或其他问题上。
这是 axios 请求
addCart(item) {
axios
.post('/api/cart/add', item)
.then(response => (response.data.data))
.catch(error => console.log(error.response.data))
这是路线:
Route::post('cart/add', [
'uses' => 'ShoppingController@store',
'as' => 'cart.add'
]);
这是购物车集合
public function toArray($request)
{
return [
'id' => $this->id,
'qty' => $this->qty
];
}
这是控制器
public function store(){
$pdt = Product::findOrFail(request()->id);
$cart = Cart::add([
'id' => $pdt->id,
'name' => $pdt->name,
'qty' => request()->qty,
'price' => $pdt->price
]);
这是产品型号
class Product extends Model
{
protected $fillable = [
'name', 'description', 'image', 'category', 'quantity', 'price', 'sold','remaining','rating', 'bestSelling', 'featured'
];
}
先感谢您