Форум сайта python.su
Здравствуйте
Вообщем есть такая задачка интересная, и никак ее не могу оформить правильно, надеюсь кто поможет или направит правильную сторону. Есть модель Product в ней поле album, которое связано моделью gallery приложения photologue, в модели gallery есть поле ManyToMany с ссылками на фотографии уже другой модели Photo, задача вывести только фотки. Но получается вывести только саму галерею с ее собственными ссылками, переход по которым и открывает доступ ко всем картинкам. Подскажите как из поля достать нужную информацию.
Офлайн
Лучше всякого словесного описания может быть только код. Покажите модельки, не надо никого стесняться.
Офлайн
Хорошо Значит вот модель 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)
Офлайн
Ну Вы же вроде не нуб и не глупый человек, Вы издеваетесь сейчас или как?
Отредактировано FishHook (Окт. 16, 2012 16:33:40)
Офлайн
Да я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Отредактировано SergeyMiracle (Окт. 16, 2012 16:42:29)
Офлайн
Мда, я все таки идиот.
Переделал вьюху на -
photos = Gallery.objects.all()[0].photos
{% for photos in photos.all %} <img src="{{ MEDIA_URL}}{{ photos.image }}" /> {% endfor %}
Отредактировано SergeyMiracle (Окт. 16, 2012 16:50:28)
Офлайн
SergeyMiracleДа я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Офлайн
Вопросик есть еще, тут похоже фильтраии по галереии нет, через поле 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)
Офлайн
FishHookSergeyMiracleДа я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
Дело в том, что на этом конкретном ресурсе люди в основном отзывчивые и добрые. Тебе помогут. Но, согласись, никому не надо за тебя придумывать, как там у тебя написаны модели и почему у тебя не получается сделать правильную выборку. Ты даешь словесное описание, но мы же программисты, а не какие-нибудь там менеджеры. Я тебе намекнул, мол покажи код. Ну ты и показал! Со всей трехомудией, которая к озвученной задаче не имеет отношения. Теперь ты предлагаешь разбираться в предоставленных портянках. А оно кому-то надо? Дай конкретику и люди к тебе потянутся. Нафиг мне стопятьсот твоих пропертей или двадцать строк импорта? Ты покажи как данные организованы!!!!
Офлайн
Разобрался и с tumbnails, извиняюсь перед FishCook за такое откровенное нубство, спасибо за наставничество
Офлайн