我的应用程序有一个数据存储条目,当应用程序第一次部署时需要用一些默认值进行初始化。我有一个页面可以让应用程序的管理员稍后编辑这些值,所以如果初始化代码再次运行并覆盖这些编辑就会出现问题。启动代码最安全的地方
我最初尝试将代码放入appengine_config.py
,但这显然是不正确的,因为实体的任何新值在几次页面加载后都被覆盖。我想在run_wsgi_app()
的调用之前把它放在main.py
之前,但是据我的理解,只要App Engine创建应用程序的新实例,就会运行main.py
。 Warmup requests似乎与appengine_config.py
有同样的问题。
有没有办法做我想做的事情?
你在appengine_config.py中的代码应该检查值的存在,并且只有当没有值存在时它应该定义一个默认值。无论采取什么策略,您都会遇到这个问题。确保曾经处理Intialiases默认值的过程至多运行一次。我实际上只会调用一次特定的处理程序方法。然后在采取任何行动之前检查它是否应该运行;如果它再次被调用。 – 2014-12-07 04:57:42
谢谢,这绝对是解决我的问题。如果这是张贴的答案,我会接受它。 – 2014-12-07 23:39:47