Focus聚焦社区
是GoFrame
社区项目,采用了简洁强大的GoFrame
作为后端WEB
框架,
模板引擎用的是GF
自带template
模板,数据库用MySQL
,前端使用jQuery
/bootstrap
框架。
项目文档:Focus聚焦社区
请不要恶意发送垃圾数据哦~ 地址: https://focus.goframe.org/
- 下载项目源码:
git clone https://github.com/gogf/focus
- 创建
focus
数据库:CREATE DATABASE `focus` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_bin';
- 运行
document
下focus.sql
初始化数据库SQL
。 - 复制
config
下config.example.toml
为config.toml
配置文件:其他配置根据需要自行调整。# 数据库配置 [database] link = "mysql:root:123456@tcp(127.0.0.1:3306)/focus" debug = true
- 运行:
go run main.go
- 访问 http://127.0.0.1:8199 即可看到登录页面,默认账号/密码:
goframe
/123456
- 安装
gf-cli
,详情查看:https://itician.org/pages/viewpage.action?pageId=1114260 - 打包命令:执行
gf build
即可。 - 打包结果:默认
linux/macos/windows
三个版本。bin ├── darwin_amd64 │ └── focus ├── linux_amd64 │ └── focus └── windows_amd64 └── focus.exe
4、将config.toml和focus放到同一级目录,启动focus即可。
默认配置文件配置中,会将public,template目录进行二进制打包,随着可执行文件一同发布。因此,发布时仅需要将config.toml和focus拷贝到目标服务器运行即可。此外,您也可以考虑将特定的配置文件用打包发布,那么发布时仅需要发布focus可执行文件即可。
├── app
│ ├── dao
│ ├── model
│ ├── shared
│ └── system
│ ├── admin
│ │ └── internal
│ └── index
│ └── internal
│ ├── api
│ ├── define
│ └── service
├── config
├── document
├── library
├── packed
├── public
├── template
├── upload
├── Dockerfile
├── go.mod
└── main.go
目录/文件名称 | 说明 | 描述 |
---|---|---|
app |
业务逻辑层 | 所有的业务逻辑存放目录。 |
- dao |
数据访问 | 数据库的访问操作,仅包含最基础的数据库CURD方法。 |
- model |
数据模型 | 存放数据相关的实体结构定义。 |
- system |
系统模块 | 内部可能包含多个子系统,不同子系统之间资源相互隔离。 |
- index |
前端页面 | 子系统,前端页面。 |
- internal |
内部模块 | 系统内部模块,仅供当前内部系统调用,无法在系统间共享。 |
- api |
业务接口 | 系统内部接收/解析用户输入参数的入口/接口层 |
- define |
结构定义 | 系统内部的输入、输出数据结构定义。 |
- service |
逻辑封装 | 系统内部业务逻辑封装,实现特定的业务需求。 |
config |
配置管理 | 所有的配置文件存放目录。 |
docker |
镜像文件 | Docker镜像相关依赖文件,脚本文件等等。 |
document |
项目文档 | Documentation项目文档,如: 设计文档、帮助文档等等。 |
library |
公共库包 | 公共的功能封装包,往往不包含业务需求实现。 |
packed |
打包目录 | 将资源文件打包的Go 文件存放在这里,boot 包初始化时会自动调用。 |
public |
静态目录 | 仅有该目录下的文件才能对外提供静态服务访问。 |
template |
模板文件 | MVC模板文件存放的目录。 |
Dockerfile |
镜像描述 | 云原生时代用于编译生成Docker镜像的描述文件。 |
go.mod |
依赖管理 | 使用Go Module 包管理的依赖描述文件。 |
main.go |
入口文件 | 程序入口文件。 |