Hi,
I followed the B-List article to write better template tags:
http://www.b-list.org/weblog/2006/06/07/django-tips-write-better-template-tags

So, I've made a blog_posts.py file :
-----------------------------------------------------------
from django.template import Library, Node
from django.db.models import get_model

register = Library()

class LatestContentNode(Node):
    def __init__(self, model, num, varname):
        self.num, self.varname = num, varname
        self.model = get_model(*model.split('.'))

    def render(self, context):
        context[self.varname] =
self.model._default_manager.all()[:self.num]
        return ''

def get_latest(parser, token):
    bits = token.contents.split()
    if len(bits) != 5:
        raise TemplateSyntaxError, "get_latest tag takes exactly four
arguments"
    if bits[3] != 'as':
        raise TemplateSyntaxError, "third argument to get_latest tag
must be 'as' "
    return LatestContentNode(bits[1], bits[2], bits[4])

get_latest = register.tag(get_latest)
-----------------------------------------------------------

Now, inside my template "base.html", I call it like this :

{% load blog_posts %}
{% get_latest blog.Post 10 as recent_posts %}
{% for p in recent_posts reversed %}
<li><a class="lien_recents" href="{{  p.get_absolute_url }}" title="{{
p.title }}">{{ p }}</a></li>
{% endfor %}

The problem is that it's returning the first 10 blog entries, not the
10 lasts.
I've tried to change the line :
context[self.varname] = self.model._default_manager.all()[:self.num]
with
context[self.varname] = self.model._default_manager.all()[self.num:]
for exemple, but it's returning an error.
What's wrong ?
Thanks a lot.
6TooL9


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users
-~----------~----~----~----~------~----~------~--~---

Reply via email to