【问题标题】:How are listproperty fields ordered in App Engine?App Engine 中的 listproperty 字段如何排序?
【发布时间】:2011-04-22 00:03:23
【问题描述】:

我计划将一些数据存储在列表属性中,并希望在我查询实体时确保列表中项目的顺序保持不变。从datastore放和取数据时有这样的保证吗?

需要明确的是,我并不是想通过 list 属性中的任何内容来排序一组结果,我只是想确保如果我有一个字符串列表(例如:“Sam”、“Alberto”、“ Rick"),当我访问该实体时,它们总是按那个顺序排列。

this question 的答案暗示他们总是保持不变,但我想确定: Use a ListProperty or custom tuple property in App Engine?

【问题讨论】:

    标签: python google-app-engine google-cloud-datastore


    【解决方案1】:

    文档中的声明是:

    通常会保留顺序,因此当查询和 get() 返回实体时,列表属性值的顺序与存储时的顺序相同。有一个例外:Blob 和 Text 值被移到列表的末尾;但是,它们彼此之间保持原来的顺序。

    (来自http://code.google.com/appengine/docs/python/datastore/datamodeling.html

    所以,如果你只存储字符串,它们应该以正确的顺序返回。

    【讨论】:

      【解决方案2】:

      ListProperties 就像 python 列表一样工作;它们是有序的,并且将保持有序。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-13
        相关资源
        最近更新 更多