Thread View: pl.comp.lang.python
2 messages
2 total messages
Started by jm426
Fri, 20 Nov 2009 10:54
queryset ze zmienna w templatetags
Author: jm426
Date: Fri, 20 Nov 2009 10:54
Date: Fri, 20 Nov 2009 10:54
26 lines
1935 bytes
1935 bytes
Witam,
mam problem z przeslaniem zmiennej z template do queryset w
templatetag.
W template ustawilem:
{% count category %}
gdzie count jest templatetag a category zmienna {{ category }} np
Linux
def count(name):
row = "\"%s\"" % name
counter = Entry.objects.filter(categories__title=row).count()
return counter
register.simple_tag(count)
Problem jest taki ze jesli ustawie {% count "Linux" %} to wszystko
działa, ale ze zmienna nie chce. Powód jest taki że zmiana nie ma
cudzysłowów które są potrzebne w queryset.
Próbowałem je dodać poprzez "\"%s\"" % name ale wówczas wynik jest 0
więc podejrzewam że w zapytaniu ustawia sie "row" a nie "Linux"?
Prosze o pomoc bo jakoś nie mogę tego rozgryść :-/
Pozdrawiam
Jacek
Re: queryset ze zmienna w templatetags
Author: Michał Żarłok
Date: Fri, 20 Nov 2009 23:54
Date: Fri, 20 Nov 2009 23:54
28 lines
1550 bytes
1550 bytes
jm426 wrote:
> def count(name):
> row = "\"%s\"" % name
> counter = Entry.objects.filter(categories__title=row).count()
> return counter
>
> register.simple_tag(count)
>
> Problem jest taki ze jesli ustawie {% count "Linux" %} to wszystko
> działa, ale ze zmienna nie chce. Powód jest taki że zmiana nie ma
> cudzysłowów które są potrzebne w queryset.
Nie słyszałem, żeby zmienna musiała być otoczona cudzysłowami przed
podaniem do query, więc spokojnie powinno działać:
def count(name):
counter = Entry.objects.filter(categories__title=name).count()
return counter
register.simple_tag(count)
>
> Pozdrawiam
> Jacek
Pozdrawiam
Michał
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads