每个环境配置的web2py

时间:2011-05-30 20:42:02

标签: python web2py

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

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

1 个答案:

答案 0 :(得分: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等效的方法。