Найти - Пользователи
Полная версия: Photolog
Начало » Django » Photolog
1 2
SergeyMiracle
Здравствуйте
Вообщем есть такая задачка интересная, и никак ее не могу оформить правильно, надеюсь кто поможет или направит правильную сторону. Есть модель Product в ней поле album, которое связано моделью gallery приложения photologue, в модели gallery есть поле ManyToMany с ссылками на фотографии уже другой модели Photo, задача вывести только фотки. Но получается вывести только саму галерею с ее собственными ссылками, переход по которым и открывает доступ ко всем картинкам. Подскажите как из поля достать нужную информацию.
FishHook
Лучше всякого словесного описания может быть только код. Покажите модельки, не надо никого стесняться.
SergeyMiracle
Хорошо Значит вот модель 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()

Модель приложения Photologue:

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'))
  
FishHook
Ну Вы же вроде не нуб и не глупый человек, Вы издеваетесь сейчас или как?
SergeyMiracle
Да я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.
SergeyMiracle
Мда, я все таки идиот.
Переделал вьюху на -
photos = Gallery.objects.all()[0].photos
И в шаблоне
{% for photos in photos.all %}
  <img src="{{ MEDIA_URL}}{{ photos.image }}" />
 {% endfor %}
и все показал.

Щас надо видимо еще понять как доставать thums, чтоб превью фоток было.
FishHook
SergeyMiracle
Да я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.


Дело в том, что на этом конкретном ресурсе люди в основном отзывчивые и добрые. Тебе помогут. Но, согласись, никому не надо за тебя придумывать, как там у тебя написаны модели и почему у тебя не получается сделать правильную выборку. Ты даешь словесное описание, но мы же программисты, а не какие-нибудь там менеджеры. Я тебе намекнул, мол покажи код. Ну ты и показал! Со всей трехомудией, которая к озвученной задаче не имеет отношения. Теперь ты предлагаешь разбираться в предоставленных портянках. А оно кому-то надо? Дай конкретику и люди к тебе потянутся. Нафиг мне стопятьсот твоих пропертей или двадцать строк импорта? Ты покажи как данные организованы!!!!
SergeyMiracle
Вопросик есть еще, тут похоже фильтраии по галереии нет, через поле 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)
Как уточнение сделать, что фильтр был по полю album?
SergeyMiracle
FishHook
SergeyMiracle
Да я только изучаю Django, и как новичку мне не понятно, хотелось бы пояснения или направления, ну если глупость сделал хотя бы так: лес там –>. Макси чего я добился посредством views - <django.db.models.fields.related.ManyRelatedManager object at 0x7ffdf7a0d390>, к полю обратился, но мне от туда фотки нужны, ну а результат на лицо. Ну или ссылка на саму галерею, а далее клик клик ну и фотки. Но хочется при выводе Product сразу эти фотки и вынуть.


Дело в том, что на этом конкретном ресурсе люди в основном отзывчивые и добрые. Тебе помогут. Но, согласись, никому не надо за тебя придумывать, как там у тебя написаны модели и почему у тебя не получается сделать правильную выборку. Ты даешь словесное описание, но мы же программисты, а не какие-нибудь там менеджеры. Я тебе намекнул, мол покажи код. Ну ты и показал! Со всей трехомудией, которая к озвученной задаче не имеет отношения. Теперь ты предлагаешь разбираться в предоставленных портянках. А оно кому-то надо? Дай конкретику и люди к тебе потянутся. Нафиг мне стопятьсот твоих пропертей или двадцать строк импорта? Ты покажи как данные организованы!!!!

Вас понял, повтороюсь, новичок в этом деле, на будущее запомню
SergeyMiracle
Разобрался и с tumbnails, извиняюсь перед FishCook за такое откровенное нубство, спасибо за наставничество
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB