Не могу понять, где я иду не так здесь. Прости меня, потому что я новичок в этом. Я пытаюсь отобразить 10 новейших объектов в модели.
Вот цикл, который я использовал для помещения всех этих объектов в список:
# put the top 10 newest Recipe objects in a list
entries_list = []
all_recipes = Recipes.objects.annotate(Count('id'))
newest_recipe_index = len(all_recipes)
index = 0
while index < 10:
try:
x = Recipes.objects.get(id=newest_recipe_index)
entries_list.append(x)
newest_recipe_index = newest_recipe_index - 1
index = index + 1
except:
index = index + 1
pass
Затем я отображаю это на странице следующим образом:
c = RequestContext(request, {'form' : form, 'entries_list' : entries_list})
return render_to_response("main.html", c)
А вот мой HTML:
{% for entries in entries_list %}
<i><b>Name:</i></b> {{ entries_list.name }}<br>
<img src="/images{{ entries_list.picture }}" height="300" width="300"></img><br>
<i><b>Ingredients:</i></b> {{ entries_list.ingredients }}<br>
<p><i>{{ entries_list.description }}</i></p>
<i><b>Created by:</i></b> {{ entries_list.user }}<br><br>
{% endfor %}
А вот models.py:
class Recipes(models.Model):
name = models.CharField(max_length=50)
ingredients = models.CharField(max_length=300)
picture = models.ImageField(upload_to = 'recipes/%Y/%m/%d')
user = models.CharField(max_length=30)
date = models.DateTimeField(auto_now=True)
description = models.TextField()
comments = models.ManyToManyField(Comments)
Кажется, что цикл работает. Правильное количество записей там. Просто теги шаблонов не работают. Они просто пустые. Таким образом, кажется, что это нормально работает, помещая объекты в список, просто не получит мои отдельные поля.