关于 tornado.options.parse_config_file 使用的问题

2012-12-26 17:07:51 +08:00
 bindiry
新接触 Tornado,在使用 tornado.options.parse_config_file 读取配置文件时,发现直接调用会出错,非要先 define 一下,才能正常读取配置文件,比如:

> 配置文件(config.cfg)的内容为:

dbhost="localhost"

> 使用如下代码会出错:

tornado.options.parse_config_file("config.cfg")
print options.dbhost

> 使用如下代码反而正常读取配置文件的内容(default的值随便写,会被配置文件的内容覆盖):
define("dbhost", default="xxxxx")
tornado.options.parse_config_file("config.cfg")
print options.dbhost

> 难道在设计上,配置文件只是为了切换不同环境,默认配置还需要 define 在代码里?请问如果不用 define 而直接读取配置文件的内容?
6855 次点击
所在节点    Tornado
2 条回复
binux
2012-12-26 17:20:01 +08:00
不可以,必须先define再使用
default可以不写,直接 define('dbhost') 即可
define可以输出help,不然谁知道你定义了什么config

或者你可以跳过tornado,自己execfile一下config文件即可
bindiry
2012-12-26 17:38:51 +08:00
@binux 明白了,谢谢回复。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/55896

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX