You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
871 B
31 lines
871 B
# -*- coding: utf-8 -*-
|
|
from django.contrib import admin
|
|
from django.conf import settings
|
|
|
|
from .models import Teaser
|
|
|
|
|
|
LANGUAGE_CODE = settings.LANGUAGE_CODE
|
|
|
|
|
|
class TeaserAdmin(admin.ModelAdmin):
|
|
list_display = ['title', 'get_page_title', 'anchor', 'views_count']
|
|
search_fields = ['title', 'body']
|
|
readonly_fields = ['views_count']
|
|
|
|
def queryset(self, request):
|
|
qs = super(TeaserAdmin, self).queryset(request)
|
|
qs = qs.extra(select={
|
|
'page_title': "SELECT title FROM cms_title WHERE language='%s' AND cms_title.page_id = teasers_teaser.page_id"
|
|
% LANGUAGE_CODE
|
|
})
|
|
return qs
|
|
|
|
def get_page_title(self, obj):
|
|
return obj.page_title
|
|
|
|
get_page_title.admin_order_field = 'page_title'
|
|
get_page_title.short_description = u'Cтраница'
|
|
|
|
|
|
admin.site.register(Teaser, TeaserAdmin)
|
|
|