从根本上转换思想是比较困难的,所以学spring boot前后端分离的难度更高。

有了传统思维,很多东西就会用惯性思考。

记录几个事件

1、mineadmin官方示例中,主键都是雪花算法的整型,所以自动生成的代码里面,主键也必须是整型,否则新增和保存的时候都会报错。


我的主键是string的,所以需要自己定义一个新增方法来处理。不能直接使用生成的代码。

更新的时候,可以用现成的如:

#[PutMapping("update/{id}"), Permission("dataset:stdCategory:update"), OperationLog]
    public function update(string $id, StdDatasetCategoryUpdateRequest $request): ResponseInterface
    {
        return $this->service->updateByCondition([['uuid', '=', $id]], $request->all()) ? $this->success() : $this->error();
    }

新增时,主键不是整型,也不会自动赋值,手工赋值


#[PostMapping("save"), Permission("dataset:stdCategory:save"), OperationLog]
    public function save(StdDatasetCategoryCreateRequest $request): ResponseInterface
    {
        $data=$request->all();
        $data['uuid']=(isset($data['uuid']) && $data['uuid']!='')?$data['uuid']:uniqid('sdc_',true);
        return $this->success(['id' => $this->service->saveNew($data)]);
    }

2、针对新增、修改时间字段不是hyperf规定的字典的调整。


在Model中,增加


    //public $timestamps = false;

    const CREATED_AT = 'create_time';
    const UPDATED_AT = 'modify_time';

注意需要注释掉默认生成的timestamps=false的语句。


刚刚开始摸索,记录才刚刚开始。