Mercurial > public > madeira
view band/views.py @ 151:762e46d0bb4a
urlquote photologue filenames when building URLs.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 30 Jul 2014 20:07:21 -0500 |
parents | 2db040e89285 |
children | 312f198e8958 |
line wrap: on
line source
""" Views for the band application. """ import random from django.shortcuts import render from django.shortcuts import get_object_or_404 from photologue.models import Gallery from photologue.models import Photo from band.models import Member, Merchandise, Album def bio(request): members = Member.objects.exclude(is_active=0) return render(request, 'band/bio.html', {'members': members}) def photos_index(request): galleries = Gallery.objects.values('title', 'id').order_by('-date_added') photo_ids = Photo.objects.filter(is_public=True).values_list('id', flat=True) photo_ids = random.sample(photo_ids, 4) random_photos = Photo.objects.filter(id__in=photo_ids) return render(request, 'band/photos.html', { 'galleries': galleries, 'random_photos': random_photos, }) def photo_detail(request, id): gallery = get_object_or_404(Gallery, pk=id) photos = gallery.photos.order_by('id') return render(request, 'band/photo_detail.html', { 'gallery': gallery, 'photos': photos, }) def buy(request): albums = Album.objects.all().order_by('-id') merchandise = Merchandise.objects.all().order_by('-id') return render(request, 'band/buy.html', { 'albums': albums, 'merchandise': merchandise, }) def contact(request): band = Member.objects.exclude(is_active=0).order_by('order') return render(request, 'band/contact.html', { 'band': band, })