开源软件企业

简明优雅一步一步搞GOframe第二天 配置静态资源目录和数据库

2024/3/9 23:34:41

一、配置文件为 manifest\config\config.yaml    (gf_demo\hack也有配置文件 只需要配置 database 主要用来生成dao)


1、manifest\config\config.yaml 

server:
        address:     ":8008"   #修改默认监听端口
      openapiPath: "/api.json"
      swaggerPath: "/swagger"
      serverRoot:"/resource/public"   #静态资源目录


database:
  debug: true  default:
    link:  "sqlite::@file(hack/50cms2024)"  #link数据库 这里用sqlite


此时可以把 layui  pearadmin放入\resource\public中    http://127.0.0.1:8008/index.html 直接访问

也可以通过  在cmd.go中设置  root目录 


s.SetServerRoot("/resource/Pear-Admin-Layui")


2、hack/config.yaml  

database:
  default:
    link:  "sqlite::@file(hack/50cms2024)"


3、数据库需要在更目录 添加如下  (ORM链式操作(🔥重点🔥))

_"github.com/gogf/gf/contrib/drivers/sqlite/v2"     (前面_表示,引入并不是当前要用,而是编译用)





  • 2、在go.mod中添加驱动库与版本




github.com/gogf/gf/contrib/drivers/sqlite/v2 v2.6.3



  • 在命令行中进行依赖更新


go mod tidy之后 会自动加载依赖包 改变go.mod文件 不用去管



二、配置好后生成ORm    详细可以查看官方文档代码生成-gen(🔥重点🔥)

1 ,进入项目根目录执行 gf gen dao 即可。


至此orm 全部完成 可以直接使用了 internal 内 model、和dao 的东西都不用手工维护



三、数据库显示(在\internal\cmd\cmd.go中)

1.先引入dao

import  "50cmsgo/internal/dao"

2main中

Main = gcmd.Command{



        s.BindHandler("/db", func(r *ghttp.Request) {
     
md := dao.DboLNewss.Ctx(r.Context())
    books, err := md.All()
       if err==nil{
      r.Response.Writeln(books)
    }


运行命令go run main.go 即可