9.2. 管理后台 - 添加、修改、删除优惠券
添加优惠券
上一节我们完成了优惠券的设计和列表展示,接下来我们要实现在管理后台添加优惠券的功能。
1. 控制器
对于新增,我们只需要修改 form()
方法即可:
app/Admin/Controllers/CouponCodesController.php
.
.
.
protected function form()
{
$form = new Form(new CouponCode);
$form->display('id', 'ID');
$form->text('name', '名称')->rules('required');
$form->text('code', '优惠码')->rules('nullable|unique:coupon_codes');
$form->radio('type', '类型')->options(CouponCode::$typeMap)->rules('required')->default(CouponCode::TYPE_FIXED);
$form->text('value', '折扣')->rules(function ($form) {
if (request()->input('type') === CouponCode::TYPE_PERCENT) {
// 如果选择了百分比折扣类型,那么折扣范围只能是 1 ~ 99
return 'required|numeric|between:1,99';
} else {...