Форум сайта python.su
0
Здравствуйте
Вообщем есть такая задачка интересная, и никак ее не могу оформить правильно, надеюсь кто поможет или направит правильную сторону. Есть модель Product в ней поле album, которое связано моделью gallery приложения photologue, в модели gallery есть поле ManyToMany с ссылками на фотографии уже другой модели Photo, задача вывести только фотки. Но получается вывести только саму галерею с ее собственными ссылками, переход по которым и открывает доступ ко всем картинкам. Подскажите как из поля достать нужную информацию.
Офлайн
568
Лучше всякого словесного описания может быть только код. Покажите модельки, не надо никого стесняться.
Офлайн
0
Хорошо
Значит вот модель Product:
class Product(models.Model): title = models.CharField(max_length=100) longtitle = models.CharField(max_length=100) slug = models.SlugField(max_length=100,help_text="Отображение в URL") category = models.ForeignKey(Category) image = models.ImageField(upload_to='images') album = models.ForeignKey(Gallery) pdf = models.FileField(upload_to='pdf') text = models.TextField()
class Gallery(models.Model): date_added = models.DateTimeField(_('date published'), default=datetime.now) title = models.CharField(_('title'), max_length=50, unique=True) title_slug = models.SlugField(_('title slug'), unique=True, help_text=_('A "slug" is a unique URL-friendly title for an object.')) description = models.TextField(_('description'), blank=True) is_public = models.BooleanField(_('is public'), default=True, help_text=_('Public galleries will be displayed in the default views.')) photos = models.ManyToManyField('Photo', related_name='galleries', verbose_name=_('photos'), null=True, blank=True) tags = TagField(help_text=tagfield_help_text, verbose_name=_('tags')) class ImageModel(models.Model): image = models.ImageField(_('image'), max_length=IMAGE_FIELD_MAX_LENGTH, upload_to=get_storage_path) date_taken = models.DateTimeField(_('date taken'), null=True, blank=True, editable=False) view_count = models.PositiveIntegerField(default=0, editable=False) crop_from = models.CharField(_('crop from'), blank=True, max_length=10, default='center', choices=CROP_ANCHOR_CHOICES) effect = models.ForeignKey('PhotoEffect', null=True, blank=True, related_name="%(class)s_related", verbose_name=_('effect')) class Photo(ImageModel): title = models.CharField(_('title'), max_length=50, unique=True) title_slug = models.SlugField(_('slug'), unique=True, help_text=('A "slug" is a unique URL-friendly title for an object.')) caption = models.TextField(_('caption'), blank=True) date_added = models.DateTimeField(_('date added'), default=datetime.now, editable=False) is_public = models.BooleanField(_('is public'), default=True, help_text=_('Public photographs will be displayed in the default views.')) tags = TagField(help_text=tagfield_help_text, verbose_name=_('tags'))
Отредактировано SergeyMiracle (Окт. 16, 2012 16:59:22)
Офлайн
568
Ну Вы же вроде не нуб и не глупый человек, Вы издеваетесь сейчас или как?
Отредактировано FishHook (Окт. 16, 2012 16:33:40)
Офлайн
0
Да я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Отредактировано SergeyMiracle (Окт. 16, 2012 16:42:29)
Офлайн
0
Мда, я все таки идиот.
Переделал вьюху на -
photos = Gallery.objects.all()[0].photos
{% for photos in photos.all %} <img src="{{ MEDIA_URL}}{{ photos.image }}" /> {% endfor %}
Отредактировано SergeyMiracle (Окт. 16, 2012 16:50:28)
Офлайн
568
SergeyMiracleДа я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Офлайн
0
Вопросик есть еще, тут похоже фильтраии по галереии нет, через поле album
def products(request): products = Product.objects.all() photos = Gallery.objects.all()[0].photos c = RequestContext(request, {'products': products, 'photos': photos}) return render_to_response('products.html', c)
Офлайн
0
FishHookSergeyMiracleДа я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Дело в том, что на этом конкретном ресурсе люди в основном отзывчивые и добрые. Тебе помогут. Но, согласись, никому не надо за тебя придумывать, как там у тебя написаны модели и почему у тебя не получается сделать правильную выборку. Ты даешь словесное описание, но мы же программисты, а не какие-нибудь там менеджеры. Я тебе намекнул, мол покажи код. Ну ты и показал! Со всей трехомудией, которая к озвученной задаче не имеет отношения. Теперь ты предлагаешь разбираться в предоставленных портянках. А оно кому-то надо? Дай конкретику и люди к тебе потянутся. Нафиг мне стопятьсот твоих пропертей или двадцать строк импорта? Ты покажи как данные организованы!!!!
Офлайн
0
Разобрался и с tumbnails, извиняюсь перед FishCook за такое откровенное нубство, спасибо за наставничество 
Офлайн