Сохранение сортировки по значению в представлениях - PullRequest
0 голосов
/ 15 декабря 2011

У меня есть таблица со столбцами от a до f.

У меня есть поле сортировки, которое сортирует столбцы от a до f по весу, местоположению, цвету глаз и т. Д.

Каждый из весов,местоположение, цвет глаз и т. д. имеет начальное значение, например, None.

Теперь вы можете изменить значения с None на «50-100», «Korea», «Hazel».

Если я хочу обновить страницу или изменить столбцы, для которых требуется сортировка, как мне сделать так, чтобы сортировка по значениям не возвращалась к None.

Вот небольшой пример кода шаблона:

<form action="" method="get">   
<div class="sort">
<ul>
  <li>
    <a>Sort By</a>
  </li>
</ul>    
<ul> 
  <li id="sample4" class="dropdown4">
    <a href="#">Location    | <span4>World Wide</span4></a>

      <ul><li><a href="#"><input type="radio" id="radio4" name="Location"  value="America"/><label for="radio4">America</label></a>
              <a href="#"><input type="radio" id="radio5" name="Location"  value="Zanzibar"/><label for="radio5">Zanzibar</label></a>
              <a href="#"><input type="radio" id="radio6" name="Location"  value="Aussie"/><label for="radio6">Aussie</label></a>
              <a href="#"><input type="radio" id="radio7" name="Location"  value="Disneyland"/><label for="radio7">Disneyland</label></a>
              <a href="#"><input type="radio" id="radio8" name="Location"  value="Someplace"/><label for="radio8">Someplace</label></a>
              <a href="#"><input type="radio" id="radio9" name="Location"  value="TheOcean"/><label for="radio9">The Ocean</label></a>
      </li></ul>
  </li>
</ul> 
etc.....

и образец моего взгляда

arguments = {}
if request.method == 'GET':
    sortlocation = request.POST.getlist('Location')
else:
    pass

if sortlocation == []:
    sortlocation = "World Wide"
else:
    sortlocation = sortlocation[0]             
    pass

if sortlocation is not "World Wide":
    arguments['Location'] = sortlocation
else:
    arguments['Location__isnull'] = False

1 Ответ

0 голосов
/ 15 декабря 2011

Вам нужен способ для сохранения состояния.

Самый простой способ - сохранить эту информацию в сеансе :

request.session['sort'] = 'my_sort_value'

Чтобы получить ее в любом другомпросмотреть, получить к нему доступ как словарь

sort = request.session.get('sort', None)
...