使用若依加Trae快速搭建一对儿多对多CRUD
上周末想做一个记账程序,结果一直做到周五才做出来。而且这还是用了若依和AI生成代码的情况。
感觉实在写得太慢,所以来做做笔记,下次争取能快点写。
用若依首先得把若依的源码给拉下来,用的是前后端分离的所以下载了RuoYiVueMaster之后又下载了RuoYiVue3Master,一个是全家桶,一个是Vue3前端单独的。
我自己对Vue3用的更多一些,所以选择了接着用Vue3.如果不想用,那光下载一个RuoYiVueMaster就搞定了。
然后是基础的连连数据库、连连redis,下载一下前端项目的依赖。
- 搭环境
- 拉源码、配数据库、配Redis、下载前端的依赖
- 测试,能不能正常使用生成代码等功能-写一个小案例
单独
要实现多对多,也离不开先实现每个表单独的CRUD。可以先用若依把需要用到的表都给搞出来,然后会更容易发现自己是不是漏字段了。
数据建模
等环境搭好了,再做数据建模。
这里有个小技巧,那就是先找个类似的项目,看看别人界面上都有什么,比如记账的日期、金额、类型、标签、备注。
了解大概要有哪几个表了,再开始搞建模,其实也就是让AI帮忙写写sql建表语句。
因为涉及到标签了,需要用多对多,所以可以提醒AI,这里要用到多对多。
接着让AI生成sql建表语句的时候,记着让他遵循若依的建表规范,等返回来了,自己再加一些约束,比如唯一约束,再把外键约束给去了。
因为后续可能会发现自己原来建模的时候漏了字段了,需要再改,留着外键会给自己制造麻烦。
- 抄作业
- 区分多对多还是一对多还是一对一
- 让AI生成sql建表语句时,提醒它遵守若依规范
- 生成完了记着检查 约束
生成代码
生成代码的时候,要修改模块名这些,让他们保持一致。
这里主要是得把每个表单独的CRUD跑通,后续就不关心这几个表单独的前端界面了,我们会再做一个综合的。
综合
表单创建
用若依创建一个我们希望的表单,比如在录入流水的同时支持上打标签。
我们可以从前往后写,现在前端模拟好效果,然后再开一个后端接口专门服务这个表单。
等可以正常利用表单新增数据了,比如正确解析前端穿过来的数据,然后分别存好流水和标签,其实就快完成了。
想做好这一步,可以设计合适的DTO和VO,因为要传综合性的表单,若依默认是没有这种包含两个类的包装类的。如果我们能专门针对这个表单创建一个DTO,那就可以很轻松的接收前端传来的数据。
另外,还有一个好处。那就是可以统一前后端的代码,避免后续出现来回改的问题。就算是后续真的需要改了,那也只是同步新增字段,也是非常轻松的。
风格统一
有了新增功能了,我是选择交给TRAE,让它帮我写了写剩余的删改查界面和接口。
因为用不起Cursor,所以勉强尝试了一下Trae,发现也还行,可以一用。
- 综合表单,前端模拟
- 后端创建DTO并实现接口,运行真实的创建
- 补全界面