В моем index.html я пытаюсь захватить 10 последних выпусков (комиксов), отсортировав добавленную дату и затем отобразив изображение с обложки этих проблем в виде таблицы: http://www.comicbookresources.com/previews
Models.py:
class Image(models.Model):
CATEGORY_CHOICES = (
('Cover', 'Cover'),
('Scan', 'Scan'),
('Other', 'Other'),
)
title = models.CharField(max_length=256)
image = models.ImageField(upload_to="images/")
category = models.CharField(max_length=10, choices=CATEGORY_CHOICES)
contributor = models.ManyToManyField(Contributor, blank=True, null=True)
date_added = models.DateField(auto_now_add=True)
def __unicode__(self):
return self.title
class Meta:
ordering = ['title']
class Issue(models.Model):
title = models.ForeignKey(Title)
number = models.IntegerField(help_text="Do not include the '#'.")
....
date_added = models.DateTimeField(auto_now_add=True)
images = models.ManyToManyField(Image, related_name="images_inc", blank=True, null=True)
....
def __unicode__(self):
return u'%s #%s' % (self.title, self.number)
def get_absolute_url(self):
return "/issues/%s" % self.slug
class Meta:
ordering = ['-date_added']
Views.py
def index(request):
....
all_characters = Character.objects.all().filter(is_featured=True).order_by('name')
latest_issues = Issue.objects.order_by('-date_added')[:10]
....
t = loader.get_template('comics/index.html')
c = Context({
'all_characters': all_characters,
'latest_issues': latest_issues,
})
return HttpResponse(t.render(c))
Теперь вот как настроен мой файл index.html:
{% for issue in latest_issues %}
<li class="gallery">
<a href="{{ issue.get_absolute_url }}">
<img alt="{{ issue.title }} #{{ issue.number }}" title="{{ issue.title }} #{{ issue.number }}" src="{{ issue.images }}"></a>
<em>{{ issue.title }} #{{ issue.number }}</em>
</li>
{% endfor %}
{{ issue.images }}
отображает одну из этих вещей ManyToManyDBManagex34982423, а {{ issue.images.all }}
отображает что-то вроде «Image: Astonishing X-Men 1 Cover A», а {{ issue.images.url }
} ничего не отображает.
Мне нужно, чтобы оно отображало изображение обложки и, более конкретно, мне нужно, чтобы оно отображало ОДНО изображение, которое классифицируется как «Обложка», , потому что иногда есть варианты обложек, и я бы этого не хотел показать две обложки одного номера. Я уверен, что мне нужно исправить мой views.py, но как мне это сделать, а затем как отобразить его в моем шаблоне?
Детские разговоры. Я новичок в этом. Спасибо!