Можно ли показать нам код?
пример на документах Python довольно прост:
groups = []
uniquekeys = []
for k, g in groupby(data, keyfunc):
groups.append(list(g)) # Store group iterator as a list
uniquekeys.append(k)
Так в Вашем случае, данные являются списком узлов, keyfunc - то, куда логика Вашей функции критериев идет и затем groupby()
группы данные.
необходимо стараться , сортируют данные по критериям перед вызовом groupby
, или они не будут работать. groupby
метод на самом деле просто выполняет итерации через список и каждый раз, когда ключевые изменения он создает новую группу.
Чтобы правильно оценить переменную num , я думаю, вам следует изменить свой класс LatestPhotoNode следующим образом:
class LatestPhotoNode(Node):
def __init__(self, num):
self.num = template.Variable(num)
def render(self, context):
num = self.variable.resolve(self.num)
photo = Photo.objects.filter(akar=num)[:1]
context['recent_photos'] = photo
return ''
Вы не заключаете скобки вокруг переменных, когда используете их в тегах шаблонов.
{% get_latest_photo photo.id %}
Вы уверены, что ваш тег шаблона написан правильно? Например, вам нужно использовать Variable.resolve для правильного получения значений переменных: Передача переменных шаблона в тег