girover / cart
为 Laravel 开发的购物车包
v0.1.2-alpha
2022-07-21 19:31 UTC
Requires
- php: ^8.0
- illuminate/contracts: ^8.0|^9.0
- spatie/laravel-package-tools: ^1.4.3
Requires (Dev)
- brianium/paratest: ^6.2
- nunomaduro/collision: ^5.3
- orchestra/testbench: ^6.15
- phpunit/phpunit: ^9.3
- spatie/laravel-ray: ^1.23
- vimeo/psalm: ^4.8
This package is auto-updated.
Last update: 2024-09-22 00:03:10 UTC
README
内容
简介
girover/cart 是一个用于电子商务网站的包,用于处理购物车。
先决条件
- Laravel 8+
- PHP 8+
- Mysql 5.7+
安装
您可以通过 composer 添加此包
composer require girover/cart
在安装包之前,您应该配置您的数据库。
然后,您可以通过运行 Artisan 命令安装包
php artisan cart:install
此命令将处理以下任务
- 将配置文件
config\cart.php
发布到 Laravel 应用的配置文件夹。 - 将迁移文件发布到应用中的
Database\migrations
文件夹。 - 迁移已发布的迁移。
配置
girover/cart
为在您的应用程序中使用购物车提供了两种方式。
- 使用数据库驱动存储购物车数据。
- 会话驱动以将购物车数据存储在会话中。
要指定使用哪种方式,您可以在 config/cart.php
文件中添加一个驱动。
return [ 'driver' => 'database', //'driver' => 'session', ]
当将驱动设置为 database
时,购物车数据将存储在数据库表 carts
中。并且用户必须认证才能访问购物车功能。
当将驱动设置为 session
时,不使用数据库,数据将存储在会话中。另外,不需要认证用户来访问购物车功能。
在数据库购物车中,您的 User
模型必须使用特质 Girover\Cart\Concerns\HasCart
。
使用方法
要开始使用购物车,您可以使用全局辅助函数 shopping_cart
。
因此,您可以使用此函数添加项目、删除、增加或减少数量。
// CartController shopping_cart()->add(['id'=>'1', 'name'=>'Iphone 13', 'price'=>1000], 'id');
请注意,第二个参数接受一个属性的名称,以确保项目与特定的键关联,这使得计数和处理项目更容易。例如,如果您选择 name
,那么每次您将新的项目 Iphone 13
添加到购物车时,只有该项目的数量和总价将更改。
您还可以将模型作为第一个参数传递给购物车的 add
方法。
use App\Models\Product; $product = Product::find(1); shopping_cart()->add($product, $product->id);
要增加购物车中特定项目的数量,您可以使用方法 increaseItemQuantity($key)
$product = Product::find(1); shopping_cart()->increaseItemQuantity($product->id);