在开发管理控制台中,当我查看我的数据时,它显示"Select different namespace
“。
名称空间是用来做什么的,我应该如何使用它们?
发布于 2010-09-12 02:45:13
命名空间允许您实现多租户应用程序的数据隔离。official documentation链接到一些示例项目,让您了解如何使用它。
发布于 2012-05-31 20:44:51
看起来,这个问题并没有那么好的评论和回答,所以试图给出这个问题。
当使用名称空间时,我们可以在给定的名称空间上有一个键和值分离的最佳实践。下面是给出完整的名称空间信息的最佳示例。
from google.appengine.api import namespace_manager
from google.appengine.ext import db
from google.appengine.ext import webapp
class Counter(db.Model):
"""Model for containing a count."""
count = db.IntegerProperty()
def update_counter(name):
"""Increment the named counter by 1."""
def _update_counter(name):
counter = Counter.get_by_key_name(name)
if counter is None:
counter = Counter(key_name=name);
counter.count = 1
else:
counter.count = counter.count + 1
counter.put()
# Update counter in a transaction.
db.run_in_transaction(_update_counter, name)
class SomeRequest(webapp.RequestHandler):
"""Perform synchronous requests to update counter."""
def get(self):
update_counter('SomeRequest')
# try/finally pattern to temporarily set the namespace.
# Save the current namespace.
namespace = namespace_manager.get_namespace()
try:
namespace_manager.set_namespace('-global-')
update_counter('SomeRequest')
finally:
# Restore the saved namespace.
namespace_manager.set_namespace(namespace)
self.response.out.write('<html><body><p>Updated counters')
self.response.out.write('</p></body></html>')
https://stackoverflow.com/questions/3691931
复制相似问题