Django: Filtrando o objeto relacionado, removendo duplicatas do resultado
Dados os seguintes modelos:
class Blog(models.Model):
name = models.CharField()
class Entry(models.Model):
blog = models.ForeignKey(Blog)
content = models.CharField()
Eu estou olhando para passar o seguinte para um modelo:
blogs = Blog.objects.filter(entry__content__contains = 'foo')
result = [(blog, blog.entry_set.filter(content__contains = 'foo'))
for blog in blogs]
render_to_response('my.tmpl', {'result': result}
No entanto, "Blog.objects.filter (...)" retorna o mesmo objeto Blog várias vezes se mais de uma entrada correspondente for encontrada.
Como você remove as duplicatas? Ou melhor ainda, estou faltando uma maneira mais simples de passar a lista de correspondências para os modelos?