Working with records lists
Tabbli provides generic macroses which you can use for building most common interfaces.
{% set result = DB(request)
.get_collection(
'students',
records_per_page=20,
use_page_number_param='page').get_filtered_records() %}
{% from "BASE:macroses/collections.html" import
filters_block, paginator with context %}
<div class="row">
<div class="col-lg-3">
<form method="get">
{{ filters_block(result.filters) }}
<button type="submit" class="btn btn-primary">
Search
</button>
</form>
</div>
<div class="col-lg-9">
{% for rec in result.records %}
<div class="card mb-4">
<div class="card-body">
<a href="/students/{{ rec.key }}/">{{ rec }}</a>
<p>
{% with r_dict=rec.get_dict(include_related=['classes']) %}
<ul>
{% for c_dict in r_dict.properties.classes %}
<li>{{c_dict.name.en}} : {{c_dict.properties.teacher.name.en}}</li>
{% endfor %}
</ul>
{% endwith %}
</p>
</div>
</div>
{% else %}
<div class="alert alert-info">No records found</div>
{% endfor %}
{% if result.show_paginator %}
{{ paginator(result) }}
{% endif %}
</div>
</div>
Last updated
Was this helpful?