J'ai deux modèles. Commentaire et ses « sous commentaires »:Comment retourner le modèle et les modèles liés à ce modèle avec des relations plusieurs-à-plusieurs
class Comment(models.Model):
....
author = models.CharField(max_length=80)
published = models.DateTimeField(auto_now_add=True)
email = models.EmailField(blank=True)
url = models.URLField(blank=True)
post = models.ForeignKey(Entry)
subcomments = models.ManyToManyField('Subcomment', blank=True)
....
class Subcomment(models.Model):
....
author = models.CharField(max_length=80)
published = models.DateTimeField(auto_now_add=True)
email = models.EmailField(blank=True)
url = models.URLField(blank=True)
mcomment = models.ForeignKey(Comment)
....
J'essaie de faire RSS Abonnez-vous pour poster des commentaires. J'utiliser le code suivant:
class EntryCommentsFeed(Feed):
....
def items(self, obj):
return Comment.not_spam.filter(post=obj).order_by('-published')[:15]
....
Mais elle ne renvoie que des commentaires sans sous commentaires, et je n'ai aucune idée comment retourner se commenter avec son «sous commentaires et triez par date.
Oui, cela fonctionne. J'espérais avoir une meilleure solution. Merci pour la réponse =] – bosha
Étrange .. J'ai défini la fonction - http://pastie.org/private/6oo8ttmawyfrkd21ouyhq, mais l'erreur de retour django - http://pastie.org/private/z59dl06elgsafwnpx4wlfa. Chose étrange est que, les deux modèles ont get_absolute_url .. – bosha
Pas si étrange. L'application flux attend un seul ensemble de requêtes itératif. Vous lui avez passé une liste de querysets. Ça ne va pas marcher. Utilisez 'itertools.chain' pour combiner les deux jeux de requêtes (http://docs.python.org/library/itertools.html#itertools.chain). Sachez, cependant, qu'il n'y aura aucune hiérarchie dans votre flux, c'est-à-dire que les sous-commentaires ne seront pas associés aux commentaires. Tout sera juste en ligne. –