首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >App Engine数据存储中的命名空间用于什么?

App Engine数据存储中的命名空间用于什么?
EN

Stack Overflow用户
提问于 2010-09-12 01:32:10
回答 2查看 10.1K关注 0票数 18

在开发管理控制台中,当我查看我的数据时,它显示"Select different namespace“。

名称空间是用来做什么的,我应该如何使用它们?

EN

回答 2

Stack Overflow用户

发布于 2010-09-12 02:45:13

命名空间允许您实现多租户应用程序的数据隔离。official documentation链接到一些示例项目,让您了解如何使用它。

票数 13
EN

Stack Overflow用户

发布于 2012-05-31 20:44:51

看起来,这个问题并没有那么好的评论和回答,所以试图给出这个问题。

当使用名称空间时,我们可以在给定的名称空间上有一个键和值分离的最佳实践。下面是给出完整的名称空间信息的最佳示例。

代码语言:javascript
复制
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>')
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3691931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档