为了账号安全,请及时绑定邮箱和手机立即绑定

Golang MVC 结构

Golang MVC 结构

MMTTMM 2022-03-07 15:41:12
我搜索了很多网站,在 GitHub 上看到了很多资源,但我没有找到解决方案。我在 Golang 中创建了一个 MVC 网站模式:应用程序控制器楷模lib(所有功能类/功能)中间件路由器.go资源意见main.go我的问题是:如何注入配置以拥有始终需要的设置和其他实现的类(如加载速度单页)。还有一件事(另外):任何人都可以向我推荐一个好的材料或转录 MVC 技巧想法使用 Golang 工作 MVC(一般有用信息)。
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

您可以拥有一个名为 MainController 的文件,您可以在其中创建访问数据库、会话、配置文件等的功能。从那里你真正需要做的就是说这样的话(例如从其他控制器继承东西):


//MyController.go

type App struct {

    MainController

}


func (c Application) MyControllerFunc() returnTypeHere(http.Response for example) {


    //c.getDatabaseName is function from MainController that reads information from some plain text file or json file or similar

    someInfoFromConfigFile = c.getDatabaseName()

    var str []string

    str = append(str,  someInfoFromConfigFile)


    //RenderJson is function that render http response as json (Content type plain/json)

    return c.RenderJson(str)

}

但是如果你需要 mvc,我建议你使用一些框架(例如 Revel)。我一直在使用它。如果您愿意,它会为您提供基本的 mvc 功能,而所有其他内容完全取决于您。您将业务逻辑保存在一些助手中,模型文件中的模型等。


您可以在此处查看 Revel 主控制器结构: https ://github.com/revel/revel/blob/master/controller.go


查看完整回答
反对 回复 2022-03-07
  • 1 回答
  • 0 关注
  • 281 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号