记录一些个人常用的组件内部API,免得记混淆了在官方文档慢慢的定位。说实话官方文档很多地方不够详细且存在缺失,以及翻译没有更新完毕半英半中的。 v-btn 图标按钮 <!-- 单图标 --> <v-btn icon="mdi-github"> </v-btn> <!-- 图标+文字 --> <v…
通过记录IP的访问次数到Redis,来限制频繁请求/访问接口。可以动态地在响应内容中显示实际的限制频率。需要注意当前的响应内容message是以分钟为单位作提醒,由于rl.Expires.Minutes()可能会返回一个浮点数,所以使用int()来将其转换为整数。如果需要更精确的时间单位表示(比如秒)还需自行修改。 调用示例 全局使用和单独使用 f…
Gin的路由没有降级什么的,设置了静态文件端点的话后方会自动带*号捕获往后的所有路由,也就是说会直接报panic,因为直接与所有端点冲突了。 方法1 不设置为根路由而是其他自定义的端点,比如下方定义/web端点,./html表示:将项目目录下的名为html的文件夹内部所有文件作为静态资源可访问(需要加后缀) r.Static("/web", "./…
默认是软删除,除非加入Unscoped()方法才是真正的永久删除: // 软删除 func (br *BaseRepository[T]) Delete(entity T, id uint) error { return br.DB.Delete(&entity, id).Error } // 硬删除 func (br *BaseR…
模块 名为meow def dprint(*args, **kwargs): if dprint.DEBUG: print(*args, **kwargs) dprint.DEBUG = True 主程序 from meow import dprint dprint.DEBUG = False dprint("这是通过dprint函数输出的信息")
由于各种各样的特殊需求,例如云函数服务商缺失依赖包,这就需要在开发环境将某个pip包打包下来放在项目中的某个文件夹里,再去加入到pip包的扫描路径从而引用,可能有点绕,但也是一种简单粗暴的解决方案。 首先获取pip包 可以用创建虚拟环境的方法,从/.venv/Lib/site-packages/内部获取到pip包本体。 但问题出现了:利用相对路径方…
设置为上海时区正确示范,需要转义斜杠为%2f DSN: "username:password@tcp(localhost:3306)/tablename?charset=utf8mb4&parseTime=True&loc=Asia%2fShanghai" 正常的本地时区情况 DSN: "username:password@tcp(…
已解决目前网络上其他教程的坑。 安装依赖 go get github.com/swaggo/swag/cmd/swag go get github.com/swaggo go get github.com/swaggo/gin-swagger 初始化gin-swagger swag init 集成到现有项目 对于小白的提醒:下方两个示例文件中,im…
解决响应中带有反斜杠转义符&返回的json无法格式化的问题 package main import ( "encoding/json" "net/http" "github.com/gin-gonic/gin" "gorm.io/gorm" ) // 模型定义 type Cookie struct { gorm.Model CookieJs…
为了数据库表名能够在生成和使用时完全按照自定义,下面有两种解决方法,推荐方法2 方法1 使用TableName()即可解决, 缺点是每一个结构都要单独设置一次 type UsUser struct { gorm.Model ID int64 `gorm:"column:id" db:"column:id" json:"id" form:"id"` …