Admin: odkazy na čísla zadání/řešení z problémů
This commit is contained in:
parent
e1fc2ec00a
commit
c7a792257f
1 changed files with 29 additions and 1 deletions
|
@ -8,6 +8,8 @@ from solo.admin import SingletonModelAdmin
|
|||
from ckeditor.widgets import CKEditorWidget
|
||||
from django.db.models import Count
|
||||
from django.db import models
|
||||
from django.utils.safestring import mark_safe
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from django.contrib.auth.models import User
|
||||
|
||||
|
@ -478,11 +480,37 @@ create_modeladmin(ProblemNavrhAdmin, Problem, 'ProblemNavrh', verbose_name=u'Pro
|
|||
|
||||
|
||||
class ProblemZadanyAdmin(ProblemAdmin):
|
||||
list_display = ['nazev', 'typ', 'autor', 'opravovatel', 'kod', 'verejne']
|
||||
list_display = [
|
||||
'nazev',
|
||||
'typ',
|
||||
'cislo_zadani_link',
|
||||
'cislo_reseni_link',
|
||||
'autor',
|
||||
'opravovatel',
|
||||
'kod',
|
||||
'verejne'
|
||||
]
|
||||
list_filter = [
|
||||
'typ', 'zamereni', 'cislo_zadani__cislo', 'cislo_zadani__rocnik'
|
||||
]
|
||||
|
||||
def cislo_zadani_link(self, obj):
|
||||
return mark_safe('<a href="{}">{}</a>'.format(
|
||||
reverse("admin:seminar_cislo_change", args=(obj.cislo_zadani.pk,)),
|
||||
obj.cislo_zadani
|
||||
))
|
||||
cislo_zadani_link.short_description = u'Číslo zadání'
|
||||
|
||||
# TODO pokud se budou odkazy v adminu více používat, možná by se hodilo je
|
||||
# nějak zjednodušit, např. tímto?
|
||||
# https://github.com/gitaarik/django-admin-relation-links
|
||||
def cislo_reseni_link(self, obj):
|
||||
return mark_safe('<a href="{}">{}</a>'.format(
|
||||
reverse("admin:seminar_cislo_change", args=(obj.cislo_reseni.pk,)),
|
||||
obj.cislo_reseni
|
||||
))
|
||||
cislo_reseni_link.short_description = u'Číslo řešení'
|
||||
|
||||
def get_inline_instances(self, request, obj=None):
|
||||
if obj and obj.typ == Problem.TYP_ULOHA:
|
||||
inlines = [ReseniKProblemuInline, PohadkaKProblemuInline]
|
||||
|
|
Loading…
Reference in a new issue