Querystring fields¶
Tables pass data via the querystring to indicate ordering and pagination preferences.
The names of the querystring variables are configurable via the options:
order_by_field
– default:'sort'
page_field
– default:'page'
per_page_field
– default:'per_page'
, note: this field currently isn’t used by{% render_table %}
Each of these can be specified in three places:
Table.Meta.foo
Table(..., foo=...)
Table(...).foo = ...
If you’re using multiple tables on a single page, you’ll want to prefix these fields with a table-specific name, in order to prevent links on one table interfere with those on another table:
def people_listing(request):
config = RequestConfig(request)
table1 = PeopleTable(Person.objects.all(), prefix='1-') # prefix specified
table2 = PeopleTable(Person.objects.all(), prefix='2-') # prefix specified
config.configure(table1)
config.configure(table2)
return render(request, 'people_listing.html', {
'table1': table1,
'table2': table2
})