2011-05-30 103 views
3

web2py是否支持开箱即用,每个环境的配置(开发,分段,生产等)?类似于Grails和Ruby on Rails。web2py配置每个环境

我通过官方书阅读/浏览,但找不到任何东西。

回答

4

web2py开发人员不相信这是一个好方法。

我们不相信发展和生产之间的明显区别。 对于eaxmple,如果一个应用程序有一个错误,该错误总是被记录和记录,从不向用户显示,只显示给管理员。

此外,web2py根本没有配置文件,因为应用程序应该是可移植的,不会妨碍设置。

然而,您可以用比Rails或Django允许的更复杂的方式来管理不同的环境。这是因为模型不会被导入,而是会在每个请求中执行。您可以添加自己的条件以在运行时检测环境。例如:

settings = dict() 
    if request.env.http_host == 'http://127.0.0.1:8000' 
     settings['development']=True 
    else: 
     settings['development']=False 
    if settings['development']: 
     db = DAL('sqlite://....') 
    else: 
     db = DAL('mysql://....') 

您可以看到如何将其推广到更复杂的条件。当然,你可以设置['development'] = True或False常量,这是Rails等效的方式。

+0

好吧,这就是我迄今为止所做的一切。让我想起了我过去的PHP时代。我仍然喜欢清晰的环境保护,但是因为这是web2py的方式,所以就这样做。 – jarekrozanski 2011-05-31 10:22:32