2010-02-09 14 views
5

Mam układ administracyjny TabularInline, wszystko działa dobrze, chyba że chciałbym, aby było wyświetlane coś innego niż wartość Obj.__unicode__ w lewym górnym rogu każdego wiersza.Dostosowywanie admin Django Domyślne pole TabularInline

Moja TabularInline jest modelem ImageModel w wersji fotograficznej, więc chciałbym, aby pokazała mi miniaturkę zamiast zwykłego wyniku __unicode__.

Próbowałem zmienić __unicode__ do wyjścia miniaturę, który działa, z wyjątkiem HTML jest uciekł więc dostać <img src="XXX"...... etc

Czy istnieje prosty sposób na uczczenie mojego __unicode__ metodę jako bezpieczny ciąg? Albo sposób na przesłonięcie właściwości, którą administrator chce wyświetlić?

Próbowałem to:

__unicode__.is_safe = True 

Ale to nie działa.

Odpowiedz

7

Możesz dostosować szablon do swojej TabularInline, aby wyglądał tak, jak chcesz. Myślę, że jest to lepszy pomysł, następnie hacking __unicode__:

class PhotoInline(admin.TabularInline): 
    model = Photo 
    template = 'photologue/photoinline.html' 

Najprostszym sposobem, aby utworzyć to skopiować i dostosować domyślny django/contrib/admin/templates/admin/edit_inline/tabular.html szablonu.

+0

tak - tak właśnie chodziłem - odkąd stworzyłem nowy widżet, aby pokazać obraz (skopiowany z odcisków djang) –