2013-10-24 5 views
3

테이블에서 레코드를 가져옵니다.파이썬에서 레코드를 정렬하는 방법?

class user_guide(db.Model): 
    ugq_no = db.IntegerProperty() 
    ug_quest = db.TextProperty()  
    ug_answer = db.TextProperty()  
    ug_parent_type = db.TextProperty() 
    last_modified_on = db.DateTimeProperty(auto_now=True) 
    class Meta: 
     db_table = 'user_guide' 
     verbose_name = 'User Guides' 
     verbose_name_plural = 'User Guide' 
    def __unicode__(self): 
     return str(self.ugq_no) 

다음 함수 :

내 클래스입니다.

def get_all_record(request):   
    qry_obj = db.Query(user_guide) 
    all_list = [] 
    #Here I am fetching all records from qry_obj. In this I am getting data in random order. 
    for q in qry_obj: 
     all_list.append(q)   
     #all_list.sort() 
     sorted(all_list)  

    return HttpResponse(serializers.serialize('json', all_list), mimetype='application/json') 

이 글에서는 qry_obj의 모든 레코드를 가져 와서 all_list에 추가했습니다.

그러나 데이터를 오름차순으로 정렬하려면 ugq_no과 관련하여 정렬해야합니다. sort() 및 sorted()를 사용해 보았지만 사용하지 않았습니다. (Django Framwork, python) 내가 잘못 가고있는 곳입니까?

+0

장고 문서를 보셨습니까? https://docs.djangoproject.com/en/dev/topics/db/aggregation/#order-by –

+0

이것은 * 장고 모델이 아니며 Google AppEngine처럼 보입니다. –

답변

3

당신을 위해 정렬 할 기록을 구글 데이터 저장소를 가지고 쿼리에 .order method을 사용

qry_obj = db.Query(user_guide).order('ugq_no') 

주를 user_guide 객체 자체이 너무 쿼리에 액세스 할 수 있음 :

qry_obj = user_guide.all().order('ugq_no') 

list을 호출하여 쿼리를 목록으로 간단히 변환 할 수 있습니다.

all_list = list(qry_obj) 
+0

order_by는 오류를 너무 많이줍니다. 나는 시도했다 : qry_obj = db.Query (user_guide) .order ('ugq_no') – eegloo

+2

@eegloo : 당신은 여기 장고 모델을 사용하고 있는가? 더 가까이에서 보면 Google App Engine을 대신 사용하는 것처럼 보입니다. –

+0

예 Google 앱 엔진 – eegloo

관련 문제