Fiber 模板项目使用教程
1. 项目目录结构及介绍
template/
├── .github/
│ └── workflows/
│ └── ci.yml
├── .gitignore
├── LICENSE
├── README.md
├── go.mod
├── go.sum
├── main.go
├── config/
│ └── config.go
├── controllers/
│ └── home.go
├── models/
│ └── user.go
├── routes/
│ └── routes.go
└── views/
└── index.html
目录结构说明
- .github/workflows/: 存放 GitHub Actions 的工作流配置文件。
- .gitignore: 指定 Git 忽略的文件和目录。
- LICENSE: 项目的开源许可证文件。
- README.md: 项目的说明文档。
- go.mod 和 go.sum: Go 模块的依赖管理文件。
- main.go: 项目的入口文件。
- config/: 存放项目的配置文件。
- controllers/: 存放控制器文件,处理业务逻辑。
- models/: 存放数据模型文件。
- routes/: 存放路由配置文件。
- views/: 存放视图文件,通常是 HTML 模板。
2. 项目启动文件介绍
main.go
package main
import (
"github.com/gofiber/fiber/v2"
"github.com/gofiber/template/html"
"template/config"
"template/routes"
)
func main() {
// 加载配置
cfg := config.LoadConfig()
// 初始化模板引擎
engine := html.New("./views", ".html")
// 创建 Fiber 应用
app := fiber.New(fiber.Config{
Views: engine,
})
// 注册路由
routes.SetupRoutes(app)
// 启动应用
app.Listen(":" + cfg.Port)
}
启动文件说明
- main.go 是项目的入口文件,负责初始化配置、模板引擎、路由,并启动应用。
- config.LoadConfig(): 加载配置文件。
- html.New("./views", ".html"): 初始化 HTML 模板引擎。
- fiber.New(): 创建 Fiber 应用实例。
- routes.SetupRoutes(app): 注册路由。
- app.Listen(":" + cfg.Port): 启动应用,监听指定端口。
3. 项目配置文件介绍
config/config.go
package config
import (
"os"
"github.com/joho/godotenv"
)
type Config struct {
Port string
}
func LoadConfig() *Config {
// 加载 .env 文件
err := godotenv.Load()
if err != nil {
panic("Error loading .env file")
}
// 读取环境变量
port := os.Getenv("PORT")
if port == "" {
port = "3000"
}
return &Config{
Port: port,
}
}
配置文件说明
- config.go 负责加载项目的配置。
- godotenv.Load(): 加载
.env
文件,读取环境变量。 - os.Getenv("PORT"): 获取环境变量中的端口号,如果没有设置则使用默认值
3000
。 - Config 结构体: 包含项目的配置信息,如端口号。
通过以上步骤,您可以了解并使用 Fiber 模板项目的基本结构和配置。