나는 단지 이상하게 보이는 몇 시간을 디버깅하는 데 보냈다. 그러나 버그인지 아니면 잘못하고 있는지 알 수 없습니다. 짧은 버전, NDB 질의와 순서에 부등식 필터가있는 경우에는 같은 줄이어야합니다.NDB Query Chaining oddity - Order + Inequality?
참고 : 아래에 표시된 모든 데이터는 데이터 저장소의 날짜가 포함되어있어 일부는 마이크로 초가 아니지만 순서대로 생성되었습니다.
#Q1. Yields the correct results:
q = BlogPost.query().filter(BlogPost.published_date > PUBLISHED_DATE_MIN).order(-BlogPost.published_date)
for p in q.fetch(1000):
print "%s - %s" % (p.published_date, p.title)
# 2014-03-02 21:49:25 - First
# 2014-03-01 22:51:14.998963 - Should be 2nd
# 2014-03-01 21:49:54.273152 - Should be Third
다음은 처음에 내가 가진 것입니다. 참고 : 순서는 별도의 라인에
q = BlogPost.query().filter(BlogPost.published_date > PUBLISHED_DATE_MIN)
q.order(-BlogPost.published_date)
for p in q.fetch(1000):
print "%s - %s" % (p.published_date, p.title)
# 2014-03-01 21:49:54.273152 - Should be Third
# 2014-03-01 22:51:14.998963 - Should be 2nd
# 2014-03-02 21:49:25 - First
NDB 쿼리는하지만, 그때는 불평등을 제거하고 내가 얻을, 단지 정렬되지 않은 것으로 나 주문 리버스 나타납니다
q = BlogPost.query() #.filter(BlogPost.published_date > PUBLISHED_DATE_MIN)
q.order(-BlogPost.published_date)
for p in q.fetch(1000):
print "%s - %s" % (p.published_date, p.title)
# 2014-03-02 21:49:25 - First
# 2014-03-01 22:51:14.998963 - Should be 2nd
# 2014-03-01 21:49:54.273152 - Should be Third
나는이 행동을보고 있어요 sdk 콘솔뿐만 아니라 원격 콘솔 및 코드를 배포 할 때 실제 appspot에 대한 정보를 제공합니다. 이 버그 (가능성이 높음) 또는 누락 된 것입니까?
'db '의 동작을'ndb'와 혼동하는 것은 아래의 @Greg 응답을보십시오. ndb 치트 시트 - 검색어 섹션 (https://docs.google.com/document/d/1AefylbadN456_Z7BZOpZEXDq8cR8LYu7QgI7bt5V0Iw/mobilebasic)을 살펴볼 수도 있습니다. –