beego.AppConfig.String取不出默认配置的值
2017-02-28 17:43
204 查看
今天在运行新开发的
beego会默认加载 app.conf
由于beego会默认加载app.conf的配置,所以首先想到的是beego在何时加载默认配置。研究发现代码是在启动时就去加载默认配置的。所以在我使用前一定以及加载过默认配置。所以换一个思路。
beego加载默认app.conf的路径是什么
源码如下:
上面可以看出,beego默认会从workPath或者AppPath处获取默认配置。所以就将这两个路径打印出来发现对应的路径下没有app.conf
打印出来的值如下
将编译好的二进制文件移到app所在的目录下就可以了,一般为
beego工程发现使用
beego.AppConfig.String取不出配置的值。下面说一下解决思路:
beego会默认加载 app.conf
由于beego会默认加载app.conf的配置,所以首先想到的是beego在何时加载默认配置。研究发现代码是在启动时就去加载默认配置的。所以在我使用前一定以及加载过默认配置。所以换一个思路。
beego加载默认app.conf的路径是什么
源码如下:
func init() { BConfig = newBConfig() var err error if AppPath, err = filepath.Abs(filepath.Dir(os.Args[0])); err != nil { panic(err) } workPath, err := os.Getwd() if err != nil { panic(err) } appConfigPath = filepath.Join(workPath, "conf", "app.conf") if !utils.FileExists(appConfigPath) { appConfigPath = filepath.Join(AppPath, "conf", "app.conf") if !utils.FileExists(appConfigPath) { AppConfig = &beegoAppConfig{innerConfig: config.NewFakeConfig()} return } } if err = parseConfig(appConfigPath); err != nil { panic(err) } if err = os.Chdir(AppPath); err != nil { panic(err) } }
上面可以看出,beego默认会从workPath或者AppPath处获取默认配置。所以就将这两个路径打印出来发现对应的路径下没有app.conf
打印出来的值如下
******/gomodule/bin,默认的路径是app的启动路径。而使用默认参数go install编译出来的二进制文件在
$GOPATH/bin下。那么思路很简单啦。
将编译好的二进制文件移到app所在的目录下就可以了,一般为
$GOPATH/src/appname/下即可。
相关文章推荐
- App.config默认配置实例
- app.config配置文件示例
- 读写配置文件app.config
- 读写配置文件app.config
- 在app.config自定义一些配置信息
- 自定义应用程序配置文件(app.config)
- [Config]如何利用ConfigurationSettings.AppSettings.GetValues读取配置文件中多个同Key的value
- 自定义应用程序配置文件(app.config)
- 读写应用程序配置文件app.config
- .net 2.0 类库单元测试可以使用 App.config 的配置内容
- .Net2.0中WinForm加密App.config配置文件 [转]
- 自定义应用程序配置文件(app.config)
- 自定义应用程序配置文件(app.config)
- .NET开发使用Winform的配置文件App.config
- 部署数据层的配置文件(app.config)
- winform 程序的配置文件——App.config
- 自定义应用程序配置文件(app.config)
- 自定义应用程序配置文件(app.config)
- 关于程序集配置文件(App.config)的问题
- winform 程序的配置文件——App.config