2013-03-23 20 views
6

Używam wbudowanego administratora w mojej aplikacji Django. Chcę mieć tekst pomocy wyświetlany w formularzu administratora, aby strona działała z wbudowanym administratorem (nie tylko indywidualny tekst pomocy dla każdego pola w tym modelu). Próbowałem dowiedzieć się, jak to zrobić, ale nie mogę znaleźć niczego w tej sprawie. Czy brakuje mi jakiejś trywialnej opcji do zrobienia tego?Tekst "pomocy" modelu w Django Inline Admin

Jeśli nie ma super prostego sposobu, aby to zrobić, czy istnieje sposób, aby to zrobić, rozszerzając jakiś szablon?

Poniżej fragmenty moich modeli i ich adminów:

class Page(models.Model): 
    .... 

class File(models.Model): 
    page = models.ForeignKey(Page) 
    .... 

class FileAdminInline(admin.TabularInline): 
    model = File 
    extra = 0 

class PageAdmin(admin.ModelAdmin): 
    inlines = (FileAdminInline,) 
+0

Prawdopodobny duplikat [Dodawanie tekstu pomocy dla całego modelu do formularza administratora modelu django] (http://stackoverflow.com/questions/3728617/adding-model-wide-help-text-to-a-django-models -admin-form) –

Odpowiedz

2

Jeśli nie mówimy o konkretnym help_text atrybutu następnie następnie spojrzeć na ten post to pokazuje niejasna sposób realizacji tego.

0

Jeśli nie chcesz, żeby poeksperymentować z coraz help_text informacji do kontekstu formset i modyfikować szablon edit_inline, nie jest sposobem na uchwycenie verbose_name_plural Meta atrybut modelu do tego celu.

Podstawowy pomysł: Jeśli oznaczysz ten ciąg jako bezpieczny, możesz wstawić dowolny element HTML, który przyjdzie Ci do głowy. Na przykład element obrazu z jego tytułem ustawiony na globalny tekst pomocy modelu. To może wyglądać somethink tak:

class Meta: 
    verbose_name = "Ygritte" 
    verbose_name_plural = mark_safe('Ygrittes <img src="' + settings.STATIC_URL + \ 
            'admin/img/icon-unknown.svg" class="help help-tooltip" ' 
            'width="15" height="15" ' 
            'title="You know nothing, Jon Snow"/>') 

Oczywiście - jest to rodzaj hacky - ale działa to dość proste, jeśli dany model jest dostępny tylko jako model inline i nie trzeba mnogiej opisowy nazwę inne rzeczy (np. jak na liście modeli w przeglądzie administratora aplikacji).

Powiązane problemy