annotate banners/admin.py @ 1037:7e0c3cbd3cda
Fix bad select_related call.
In Django 1.8, select_related now throws an error if you give it an invalid
field. This was happening. Fix that query.
Also noticed an extra query generated in the display_post template. Fixed.
author |
Brian Neal <bgneal@gmail.com> |
date |
Tue, 29 Dec 2015 22:21:42 -0600 |
parents |
ee87ea74d46b |
children |
|
rev |
line source |
bgneal@558
|
1 """
|
bgneal@558
|
2 This file contains the automatic admin site definitions for the banners models.
|
bgneal@558
|
3
|
bgneal@558
|
4 """
|
bgneal@558
|
5 from django.contrib import admin
|
bgneal@558
|
6
|
bgneal@558
|
7 from banners.models import Campaign, Banner
|
bgneal@558
|
8
|
bgneal@558
|
9
|
bgneal@558
|
10 class BannerInline(admin.TabularInline):
|
bgneal@558
|
11 model = Banner
|
bgneal@558
|
12 extra = 1
|
bgneal@558
|
13
|
bgneal@558
|
14
|
bgneal@558
|
15 class CampaignAdmin(admin.ModelAdmin):
|
bgneal@558
|
16 prepopulated_fields = {'slug': ['name']}
|
bgneal@558
|
17 list_display = ['name', 'slug', 'creation_date']
|
bgneal@558
|
18 date_hierarchy = 'creation_date'
|
bgneal@558
|
19 search_fields = ['name']
|
bgneal@558
|
20 inlines = [BannerInline]
|
bgneal@558
|
21
|
bgneal@558
|
22
|
bgneal@558
|
23 class BannerAdmin(admin.ModelAdmin):
|
bgneal@558
|
24 list_display = ['campaign', 'description', 'image_tag', 'creation_date']
|
bgneal@558
|
25 date_hierarchy = 'creation_date'
|
bgneal@558
|
26 search_fields = ['description']
|
bgneal@558
|
27 list_filter = ['campaign']
|
bgneal@558
|
28
|
bgneal@558
|
29 def image_tag(self, obj):
|
bgneal@558
|
30 return '<img src="%s" alt="%s" />' % (obj.image.url, obj.description)
|
bgneal@558
|
31 image_tag.allow_tags = True
|
bgneal@558
|
32
|
bgneal@558
|
33 admin.site.register(Campaign, CampaignAdmin)
|
bgneal@558
|
34 admin.site.register(Banner, BannerAdmin)
|