Skip to content

mujinsong/assignment_bd

Repository files navigation

assignment_bd

项目结构

注:本次的小组项目的 go 的版本需要 1.18 及以上

技术栈

config

  • 放一些项目的配置,不过现在里面只有 DSN 配置在 config/default.go 文件下

  • 关于 DSN 的配置:因为大家本地数据库的用户名和密码都各不相同,所以建议大家把自己本地数据库的 DSN 加在这里面,方便大家以后对项目进行测试

    每次开始编译项目前,都应该先更改default.go

consts

  • 下面定义的一些常量

controller

  • 根据 青训营的api文档 中的请求的二级目录进行分包

  • image-20230131205557943

  • 里面不同文件中的不同方法就对应着 api文档 中的不同的 api接口,大家可以去实现(其中 user.go 下的各个功能已经实现完毕(主要是登录功能),大家可以测试一下)

global

  • 里面的 global/global.go 文件下定义中项目所需要的一些全局变量

middleware

  • 定义一些项目中可能会用到的中间件
  • 增加 ffmpeg 用于获取视频第一帧截图
  • 增加 ftp 用于上传视频到mysql

model

  • 将项目中可能会使用到的对象抽象成结构体

  • image-20230131210031616

  • 需要注意的是 model/user.go 里面的 type User struct 是对应着数据库中的结构体,而里面的 type UserInfo struct 则是因为部分 api 的 response 需要而创建出来的结构体, UserInfo 的对象不能直接从数据库中查出,需要通过组装字段来创建 UserInfo 对象。(ps:model/video.go 中的结构体同理)

  • model/response.go 定义了项目中所有可能用到的 response ,并且注释上有其对应的接口(具体可看代码注释)

service

  • 各种业务逻辑的实现(尽量与 controller 层对应?要不感觉太乱了)

utils

  • 包含了项目需要用到的工具

ps:大家写代码的时候尽量加点注释,并且尽量注意代码一下格式(根据代码的逻辑分片中间适当加点空行啥的),这样方便其它同学理解项目


git示例操作

git branch -m main devlop
git fetch origin
git branch -u origin/devlop devlop
git remote set-head origin -a

About

仿抖音后台

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages