class Portfolio(models.Model):
active = models.BooleanField(u'Активировать', default=False)
title = models.CharField(u'Title', max_length=80, blank=True, null=True)
url = models.CharField(u'URL', max_length=30)
name = models.CharField(u'Название', max_length=80)
fin_date = models.DateField(u'Дата окончания работ')
term = models.CharField(u'Срок работы', max_length=30)
cost_num = models.PositiveSmallIntegerField(u'Стоимость (число)')
cost_char = models.CharField(u'Стоимость (пропись)', max_length=40)
vinyl = models.CharField(u'Пленки', max_length=30, blank=True, null=True )
short_description = models.TextField(u'Описание', max_length=50, blank=True, null=True)
description = models.TextField(u'Описание')
def __unicode__(self):
return self.name
class PortfolioImage(models.Model):
portfolio = models.ForeignKey('Portfolio', related_name='images')
alt = models.CharField(u'описание', max_length=30, blank=True, null=True)
image = ImageWithThumbsField(upload_to="images/car/%s" % today, blank=True, null=True, sizes=((110, 110), (150, 150), (200, 150), (265, 200)))
position = models.PositiveSmallIntegerField(u'Позиция')
class Meta:
ordering = ['position']
def __unicode__(self):
return '%s %s' % (self.alt, self.image)
Тут проблем нету:
portfolio_list = Portfolio.objects.filter(active=True)
! но есть еще условие, если отсутствует запись из таблицы Portfolio_Image которая: связанна внешним ключом с записью из Portfolio, а так же строка position которой равно 1, то в этом случае запись будет передана в шаблон без картинки.
как это сделать не могу понять
Для наглядности http://vinil4you.ru/portfolio/ слева должны идти картинки filter(position='1') связанные с описанием справа, если картинки нету то просто выведется описание.
П.С. Два дня читаю доки но понимание того как это делается ко мне никак не придет, прошу вашей помощи.