django template tag regroup...

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Komisch, irgendwie ist das Ergebnis vom django template tag regroup nicht so wie ich es erwarte.

http://www.djangoproject.com/documentat ... s/#regroup

Template: {% regroup feed_info by feed_type as feeds_grouped %}

Code: Alles auswählen

'feed_info': [{'feed_type': u'rss',
                'title_info': u'entries',
                'url': u'/_command/1/blog/feed/entries.rss'},
               {'feed_type': u'atom',
                'title_info': u'entries',
                'url': u'/_command/1/blog/feed/entries.atom'},
               {'feed_type': u'rss',
                'title_info': u'comments',
                'url': u'/_command/1/blog/feed/comments.rss'},
               {'feed_type': u'atom',
                'title_info': u'comments',
                'url': u'/_command/1/blog/feed/comments.atom'},
...
Ergebnis:

Code: Alles auswählen

 u'feeds_grouped': [{'grouper': u'rss',
                     'list': [{'feed_type': u'rss',
                               'title_info': u'entries',
                               'url': u'/_command/1/blog/feed/entries.rss'}]},
                    {'grouper': u'atom',
                     'list': [{'feed_type': u'atom',
                               'title_info': u'entries',
                               'url': u'/_command/1/blog/feed/entries.atom'}]},
                    {'grouper': u'rss',
                     'list': [{'feed_type': u'rss',
                               'title_info': u'comments',
                               'url': u'/_command/1/blog/feed/comments.rss'}]},
                    {'grouper': u'atom',
                     'list': [{'feed_type': u'atom',
                               'title_info': u'comments',
                               'url': u'/_command/1/blog/feed/comments.atom'}]},
...
Übersehe ich da was?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Aha! Das ja komisch, die Liste muß sortiert sein:

Code: Alles auswählen

feed_info = sorted(feed_info, key=lambda x: x['feed_type'])
Damit geht's... Das ist wohl nicht wirklich so gewollt, was?

EDIT: http://code.djangoproject.com/ticket/7863 ;)

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

jens hat geschrieben:Aha! Das ja komisch, die Liste muß sortiert sein:

Code: Alles auswählen

feed_info = sorted(feed_info, key=lambda x: x['feed_type'])
Damit geht's... Das ist wohl nicht wirklich so gewollt, was?

EDIT: http://code.djangoproject.com/ticket/7863 ;)
EDIT2: Ja, so ein mist. Es steht im Sourcecode drin, das es ohne eine Sortierung nicht funktioniert, siehe http://code.djangoproject.com/ticket/7863#comment:1 Mein Gott... Nun sehe ich ja, das der ganze zweite Teil der Doku genau über das Problem ist...

Aber IMHO sollte das regroup tag von sich aus die Daten vorsortieren...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten