首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Golang结构

Golang结构
EN

Stack Overflow用户
提问于 2016-08-28 09:18:17
回答 1查看 9.3K关注 0票数 6

我搜索了许多网站,在GitHub中看到了很多信息来源,但我还没有找到解决方案。

我在Golang创建了一个MVC网站模式:

  • app
    • 控制器
    • 模型
    • lib (所有功能类/函数)
    • 中间件
    • router.go

  • 资源
    • 视图

  • main.go

,我的问题是:如何注入配置,使其具有始终需要的所有设置和其他实现的类(比如加载速度、单页)。

还有一件事(另外):有人能推荐我一个好的材料或转录MVC技巧的想法与Golang (一般有用的信息)工作MVC。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-28 14:25:57

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

代码语言:javascript
复制
//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

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39189731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档