duanpoqiu0919 2015-07-07 09:42
浏览 34
已采纳

展示框架中的相对路径

How can import a file realtive to the revel basefolder in revel framework. Currently I do the following to get hold of some config values.

file, err := ioutil.ReadFile("conf/config.conf")
...

This results in my server only working if i stand in the app directory when starting revel with

revel run myapp

Is there a way to access the base folder?

  • 写回答

2条回答 默认 最新

  • douyi0219 2015-07-07 09:52
    关注

    There are exported global variables in the revel package, you can use any of these:

    var (
        // App details
        AppName    string // e.g. "sample"
        BasePath   string // e.g. "/Users/revel/gocode/src/corp/sample"
        AppPath    string // e.g. "/Users/revel/gocode/src/corp/sample/app"
        ViewsPath  string // e.g. "/Users/revel/gocode/src/corp/sample/app/views"
        ImportPath string // e.g. "corp/sample"
        SourcePath string // e.g. "/Users/revel/gocode/src"
    
        // Revel installation details
        RevelPath string // e.g. "/Users/revel/gocode/src/revel"
    
        // Where to look for templates and configuration.
        // Ordered by priority.  (Earlier paths take precedence over later paths.)
        CodePaths     []string
        ConfPaths     []string
        TemplatePaths []string
    )
    

    If it is empty for you, that is most likely because you started your app from the base folder.

    Note that these paths are set by the Init(mode, importPath, srcPath string) function. It's documentation states:

    srcPath - the path to the source directory, containing Revel and the app.
      If not specified (""), then a functioning Go installation is required.
    

    Also check out: how to reference a relative file from code and tests

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用