CRUD 代码生成
CRUD 是创建(Create)、读取(Read)、更新(Update)和删除(Delete)的缩写,是应用程序中最常见的操作。以下是如何在 XinAdmin 中实现这些操作的基本教程。
基本概念
- 创建(Create):添加新数据到数据库。
- 读取(Read):从数据库中检索数据。
- 更新(Update):修改数据库中的现有数据。
- 删除(Delete):从数据库中移除数据。
Laravel 中的 CRUD
XinAdmin 封装了 BaseController 来实现 CRUD 操作。你的控制器只需要继承 BaseController,就可使用 基础控制器的方法。以下是一个简单的 CRUD 示例,展示了如何在 Laravel 中实现这些操作。
#[AdminController]
#[RequestMapping('/test')]
class TestController extends BaseController
{
public function __construct()
{
# 设置模型
$this->model = new DictItemModel;
# 设置搜索字段
$this->searchField = [
'name' => 'like',
'dict_id' => '=',
];
# 设置快捷搜索字段
$this->quickSearchField = [];
}
/** 查询详情 */
#[GetMapping('/{id}')]
public function get($id): JsonResponse
{
return $this->getResponse($id);
}
/** 查询列表 */
#[GetMapping]
public function list(): JsonResponse
{
return $this->listResponse();
}
/** 新增操作 */
#[PostMapping]
public function add(FormRequest $request): JsonResponse
{
return $this->addResponse($request);
}
/** 编辑操作 */
#[PutMapping]
public function edit(FormRequest $request): JsonResponse
{
return $this->editResponse($request);
}
/** 删除操作 */
#[DeleteMapping]
public function delete(): JsonResponse
{
return $this->deleteResponse();
}
}
上面的类包含了五个方法,它分别创建了五个路由,对应 CRUD 操作,如果你不清楚路由是怎么创建的,请参考 路由
。
- get 方法:查询单条数据,可以在模型中设置关联。
- list 方法:查询多条数据,返回数据集合,并自动处理分页和 where 操作。
- add 方法:新增一条数据,通过配置 $request 类型提示可以使用 FormRequest 来验证参数。
- edit 方法:编辑数据,同 add 方法,不过请求类型为 PUT,并且需要校验主键。
- delete 方法:删除数据。
类初始化时,设置了模型、搜索字段以及快捷搜索等 CRUD 相关配置,更多 CRUD 的设置,请参考
基础控制器