Chcę ukryć znak plusa + w niektórych polach klucza obcego określonego modelu w interfejsie django-admin. to jest możliwe?Administrator Django, ukryj + Znak plusa do konkretnego pola klucza obcego
Z góry dziękuję!
Chcę ukryć znak plusa + w niektórych polach klucza obcego określonego modelu w interfejsie django-admin. to jest możliwe?Administrator Django, ukryj + Znak plusa do konkretnego pola klucza obcego
Z góry dziękuję!
Jeśli chcesz go ukryć w celach kosmetycznych, użyłbym skryptu JavaScript, który ukrywa ten znak "+".
Możesz dodawać niestandardowe źródła JavaScript do modeli modeli administracyjnych za pomocą klasy wewnętrznej Media, jak opisano w docs. Coś takiego:
class MyModelAdmin(admin.ModelAdmin):
class Media:
js = ("js/hide_myfield_addlink.js",)
Źródłem JavaScript będzie wyglądać następująco:
/* file: hide_myfield_addlink.js */
django.jQuery(document).ready(function() {
django.jQuery("#add_id_myfield").hide();
});
Z drugiej strony, jeśli ci użytkownicy Administrator nigdy nie powinien być w stanie dodać taki model, nie dają im zezwolenie na ich dodanie. Wtedy te linki dodawania nigdy nie będą wyświetlane.
Numer +
jest dodawany, gdy model klucza obcego może być również dodany w administratorze i jest oparty na uprawnieniach użytkownika do tego modelu. Jeśli użytkownik nie powinien móc dodawać modeli tego typu, należy zastąpić has_add_permission
na kluczu obcym pod numerem ModelAdmin
(to znaczy znakiem dodatkowym, który pozwoli dodać) i zwrócić False dla odpowiednich warunków. Numer +
zniknie, jeśli użytkownik nie jest dozwolony.
To pytanie ma duplikat z bardzo dobrą odpowiedzią [tutaj] (http://stackoverflow.com/a/17348422/1378264) –