39👍
You can use slice
to make this:
<ul>
<h3>Positive Tweets :</h3>
{% for tweet in positiveTweet|slice:":10" %}
<li>{{ tweet.0 }}</li>
{% endfor %}
</ul>
See the Django Slice Docs.
4👍
The Django way is to construct a Paginator over the result set in the view, then look at properties of the Page in your template, see the Django pagination documentation for full details.
For instance if my News objects are available like this:
def index(request):
news = News.objects.filter(published=True).select_related('author').prefetch_related('tags')
paginator = Paginator(news, 10)
page_obj = paginator.page(request.GET.get('page', '1'))
return render(request, 'front.html', {'news': page_obj})
In the template, you are given a Page object, which will hold 10 items at a time and have several useful properties you can wire into a UI pager. For instance the bootstrap pager is wired a bit like this:
{% for post in news %}
<h3>{{ post.headline }}</h3>
{{ post.body }}
{% endfor %}
<nav>
<ul class="pagination">
{% if news.has_previous %}
<li>
<a href="?page={{news.previous_page_number}}" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
{% endif %}
{% for p in news.paginator.page_range %}
<li class="{% if news.number == p %}active{% endif %}"><a href="?page={{p}}">{{p}}</a></li>
{% endfor %}
{% if news.has_next %}
<li>
<a href="?page={{news.next_page_number}}" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
{% endif %}
</ul>
</nav>
- How can I specify a database for Django Tests to use instead of having it build it every time?
- Django count related objects
- Django remove user from all groups
- Should I use Celery or Carrot for a Django project?
4👍
Check for the loop counter like this:
{% for tweet in positiveTweet %}
{% if forloop.counter < 11 %}
<!-- Do your something here -->
{% endif %}
{% endfor %}
- Create multiple objects without multiple hits to the db in Django 1.8
- Django: How to check if username already exists?
- Run specific Django tests (with django-nose?)
-2👍
Likewise, a loop that stops processing after the 10th iteration:
{% for user in users %}
{%- if loop.index >= 10 %}{% break %}{% endif %}
{%- endfor %}
loop.index starts with 1, and loop.index0 starts with 0.
Visit the below link for details: http://jinja.pocoo.org/docs/2.10/templates/#for-loop