这是我参与11月更文挑战的第19天,活动详情查看:2021最后一次更文挑战
一、地址管理
1.1 创建地址模型以及迁移文件
运行命令php artisan make:model Address -m
在迁移文件中创建表结构:
1 | php复制代码Schema::create('addresses', function (Blueprint $table) { |
运行命令php artisan migrate
:
1.2 创建地址验证类
运行命令php artisan make:request Web/AddressRequest
:
写入:
1 | php复制代码 public function rules() |
1.3 配置地址transform创建地址资源API控制器
给模型配置可批量插入的字段:
1 | php复制代码 use HasFactory; |
在City.php
模型中写入查找父级的联动:
1 | php复制代码 /** |
在辅助函数中写入根据区id
查找上级联动数据:
1 | php复制代码 /** |
创建AddressTransformer.php
写入:
1 | php复制代码<?php |
运行命令php artisan make:controller Web/AddressController --api
写入增删改查以及是否默认方法:
1 | php复制代码<?php |
1.4 配置地址路由
1 | php复制代码 // 地址增删改查 |
1.5 订单地址修改
由于之前没有写地址相关的api,地址那块是模拟的假数据,现在把它修改过来:
1 | php复制代码// 地址数据 |
还有一处地方就是在提交订单时候验证地址是否存在:
1 | php复制代码'address_id' => 'required|exixts:addresses,id' |
1.6 测试效果
1、添加地址
2、地址列表
3、修改地址
4、地址详情
5、删除地址
6、设置默认地址
在学习的php的路上,如果你觉得本文对你有所帮助的话,那就请关注点赞评论三连吧,谢谢,你的肯定是我写博的另一个支持。
本文转载自: 掘金