Django では、次のようにすべてのファイル情報を表形式でリストしています。
<table border="0" width="100%" cellpadding="0" cellspacing="0" id="product-table">
<tr>
<th width="5%" class="table-header-left"><a href="#"><span></span></a></th>
<th width="25%" class="table-header-repeat line-left"><a href="#"><span>File Name</span></a></th>
<th width="15%" class="table-header-repeat line-left"><a href="#"><span>Type</span></a></th>
<th width="15%" class="table-header-repeat line-left"><a href="#"><span>Size</span></a></th>
<th width="20%" class="table-header-repeat line-left"><a href="#"><span>Date Updated</span></a></th>
<th width="20%" class="table-header-options line-left"><a href="#"><span>Source</span></a></th>
</tr>
<form name="form" action="/delete_files/" method="post">
{% csrf_token %}
{% load endless %}
{% paginate limit files %}
{{ endless_pagination.utils.get_elastic_page_numbers }}
{% for choice in files %}
<tr>
<td><input type="checkbox" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}" /></td>
<td><label for="choice{{ forloop.counter }}">{{ choice.file_name }}</label></td>
<td>{{ choice.type }}</td>
<td>{{ choice.size }}</td>
<td>{{ choice.end_date }}</td>
<td>{{ choice.source }}</td>
</tr>
{% endfor %}
</table>
th : にソートを適用したいfilename, date, size
。ファイル名を CharField として、日付を DateTimeField として、サイズを Django の整数として保存していますか? 並べ替えのためにページ全体を更新したくありません。これを行う方法は何ですか?これが私が考えたことです:
1) Pass href to th into backend which do the order by clause and pass data into template.
2) Fill the data into template with sorted data.
それとも、jQuery を使用して実行できますか?