key_name中的Google app引擎国家/地区代码

时间:2010-03-21 14:10:03

标签: performance google-app-engine

我有一个包含国家/地区代码的表格,这是存储这些2位数代码的最佳方式,只是在常规属性或key_name属性中?

我认为使用key_name会产生更快的性能吗?

吨。

1 个答案:

答案 0 :(得分:0)

是否要使用key_name取决于您希望如何使用它。我不完全确定您希望如何根据问题中的信息使用这些国家/地区代码。但是,假设您希望能够根据双字母代码查找国家/地区的全名,例如,从“我们”获取“美国”。在这种情况下,您可以拥有这样的实体:

class CountryName(db.Model):
    name = db.StringProperty()

    @classmethod
    def lookup_by_code(cls, code):
        country_name = ""
        country = cls.get_by_key_name(code)
        if country is not None:
            country_name = country.name

        return country_name

现在,这段代码还不完整;您需要使用数据填充模型,并且此方法不允许反向查找 - 在获得国家/地区名称时获取代码,但这应该让您了解如何使用key_names。这样做会比使用包含代码和名称作为字段的模型快得多。