Google App Engine上的ListProperty与StringListProperty

时间:2011-01-25 18:32:06

标签: python google-app-engine list bigtable datastore

我想存储整数列表(用户ID),我应该创建字符串并使用StringListProperty,还是只使用ListProperty,我想知道什么是更优化的,异构ListProperty的特定StringListProperty(使用时)只有整数)。

我需要将用户添加到列表中,直到达到一定数量,然后我为这些用户创建一个组实例(在一个单独的实体组中)。

1 个答案:

答案 0 :(得分:10)

StringListProperty只是ListProperty的一个非常薄的包装器。除了元素类型之外没有其他有意义的区别。

来自the code itself

class StringListProperty(ListProperty):
  def __init__(self, verbose_name=None, default=None, **kwds):
    super(StringListProperty, self).__init__(basestring,
                                             verbose_name=verbose_name,
                                             default=default,
                                             **kwds)

我建议将整数存储在普通的ListProperty中,从那时起,您可以在数据存储区查询中正确查询和排序它们,即数字存储查询,如果将它们转换为字符串,则无法轻松完成。