【发布时间】:2010-11-17 19:37:18
【问题描述】:
我是 Python 和 App Engine(和服务器端!)新手,我正在尝试创建非常简单的 CMS。应用程序的每个部署都将有一个 - 并且只有一个 -company 对象,实例化如下:
class Company(db.Model):
name = db.StringPropery()
profile = db.TextProperty()
addr = db.TextProperty()
我正在尝试提供更新公司资料和其他详细信息的便利。
我的第一个想法是拥有一个公司实体单例。但是看了this thread(虽然还远未完全理解),我觉得这样做很困难,也不可取。
然后我想,也许对于 CMS 的每个部署,我都可以一次性运行一个脚本(由一个完全不知名的 URL 触发),它只是实例化 Company。从那时起,我将通过theCompany = Company.all()[0]获得这个实例
这是可取的吗?
然后我记得那个帖子中的某个人建议只使用一个模块。所以我只是创建了一个 Company.py 文件并在其中插入了一些变量。我已经在 SDK 中尝试过这个,它似乎可以工作 - 令我惊讶的是,修改后的变量值在请求之间“存活”了。
请原谅我的无知,但是,我假设这些值只保存在内存中,而不是保存在磁盘上 - 不像 Datastore 的东西?这是一个强大的解决方案吗? (模块变量是否会在我的应用程序脚本的所有调用范围内?)
【问题讨论】:
标签: python google-app-engine google-cloud-datastore