我打算将一些数据存储在listproperty中,并且当我查询我的实体时,我希望确保列表中项目的顺序保持不变。从数据存储区放入和获取数据时是否有这样的保证?
要说清楚,我不是试图通过listproperty中的任何内容来排序一组结果,我只是想确保如果我有一个字符串列表(例如:“Sam”,“Alberto”,“ Rick“),当我访问该实体时,它们总是处于那个顺序。
this question的答案意味着他们总是保持不变,但我想确定: Use a ListProperty or custom tuple property in App Engine?
答案 0 :(得分:4)
文件中的陈述是:
通常会保留订单,因此当查询和get()返回实体时,列表属性值的顺序与存储时的顺序相同。有一个例外:Blob和Text值被移动到列表的末尾;但是,他们保持相对于彼此的原始秩序。
(来自http://code.google.com/appengine/docs/python/datastore/datamodeling.html)
因此,如果您只存储字符串,则应按正确的顺序返回。
答案 1 :(得分:1)
ListProperties就像python列表一样工作;他们是订购的,并将继续订购。