2013-08-23 4 views
1

mako 템플릿을 사용하여 테이블의 목록에 정보를 반환하는 양식을 만들었습니다. 템플릿과 뷰 내에서 목록 이름을 클릭하면 알파벳순으로 A-Z에서 목록을 정렬하도록 설정했습니다.템플릿에서 (장고) 목록을 주문하십시오.

문제는 다시 클릭하면 Z-a에서 주문할 수 있기를 원합니다.

def people(request): 

     sort = request.GET.get('sort','') 
     if sort != '': 
      var = sort 
      ppl = People.objects.order_by(var) 
    else: 
     ppl = People.objects.all() 

그리고 내 template.mako :이

답변

0

내가 사용 django-tables2 어떤 테이블을 표시하는 말을 작동하는 방법에 대한

<table class="table overview-table table-hover" id="people"> 
     <thead> 
     <tr> 
      <th><a href="${self.util.reverse('view_people')}?sort=first_name">First Name</th> 
      <th><a href="${self.util.reverse('view_people')}?sort=surname">Last name</th> 

     </tr> 
     </thead> 

어떤 아이디어 여기 내이다. 사용자가 열의 머리글을 클릭 할 때 어떤 방향 으로든 정렬 할 수있는 기능이 내장되어 있습니다. 그것은 매우 완전한 기능이며 바퀴를 재발 명하려는 것보다 사용하기가 훨씬 쉬울 것입니다.

+0

나는 장고 테이블 2를 조사하고 있었지만, 불행히도 프로젝트 매니저는이 프로젝트에 이것을 사용하고 싶지 않습니다. – Stephen

0

"sort_direction"과 같은 정렬 하이퍼 링크의 쿼리 문자열에 대한 추가 변수를 만들어야한다고 생각합니다. 정렬 href를 클릭하면보기에서 해당 변수를 "desc"로 설정하고이를 템플릿에 전달할 수 있습니다. 보기 다시를 수신하고 GET 변수에 "내림차순"를 볼 때 다음, 당신은 장고의 ORM에서 순서를 반대로 할 수 있습니다

ppl = People.objects.order_by('-var')

0

방법에 대한 Tablesorter를?

<script type="text/javascript" src="/path/to/jquery-latest.js"></script> 
<script type="text/javascript" src="/path/to/jquery.tablesorter.js"></script> 

$(document).ready(function() 
{ 
    $("#myTable").tablesorter(); 
}); 
관련 문제