Mimo że pole jest oznaczone jako 'editable=False'
w modelu, chciałbym, aby strona administratora je wyświetlała. Obecnie całkowicie ukrywa pole. W jaki sposób można to osiągnąć?Administrator Django: Jak wyświetlić pole oznaczone jako edytowalne = False "w modelu?
Odpowiedz
Użyj Readonly Fields. Jak tak (dla Django> = 1.2):
class MyModelAdmin(admin.ModelAdmin):
readonly_fields=('first',)
Aktualizacja
To rozwiązanie jest przydatne, jeśli chcesz zachować pole edytowalne w admin, ale nie można edytować wszędzie indziej. Jeśli chcesz, aby pole nie podlegało edycji w całym numerze, to @ Till Backhaus 'answer jest lepszym rozwiązaniem.
oryginaÂłu odpowiedź
Jednym ze sposobów, aby to zrobić byłoby użyć niestandardowego ModelForm
admin. Ten formularz może zastąpić wymagane pole, aby można go było edytować. Tym samym zachowujesz editable=False
wszędzie poza administratorem. Dla np. (testowane z Django 1.2.3)
# models.py
class FooModel(models.Model):
first = models.CharField(max_length = 255, editable = False)
second = models.CharField(max_length = 255)
def __unicode__(self):
return "{0} {1}".format(self.first, self.second)
# admin.py
class CustomFooForm(forms.ModelForm):
first = forms.CharField()
class Meta:
model = FooModel
fields = ('second',)
class FooAdmin(admin.ModelAdmin):
form = CustomFooForm
admin.site.register(FooModel, FooAdmin)
to nie działa, przynajmniej na Django 1.6 jest prawidłowo wyświetlany w panelu administratora formy, ale kiedy zapisać formularz i powrócić do niego ponownie, formularze wartość jest ponownie domyślna. – Euphorbium
- 1. Pole modelu w Django
- 2. Dict jako pole modelu
- 3. Administrator Django, sekcja bez "modelu"?
- 4. Jak ustawić pole tekstowe jako pole wyboru w django
- 5. Pole "___recordID" nie jest oznaczone jako zapytanie.
- 6. Jak dodać pole obliczeniowe do modelu Django
- 7. Jak odsłonić właściwość (pole wirtualne) w modelu Django jako pole w TastyPie ModelResource
- 8. Administrator django: Jak dostosować jedno pole w zestawach pól?
- 9. Django Forms: Ukryte pole modelu?
- 10. Jak ustawić pole modelu django według nazwy?
- 11. Pole DateTime w modelu formularza Django
- 12. Django Administrator: Pokaż listę modeli
- 13. Django: Chcesz wyświetlić puste pole jako puste zamiast wyświetlania
- 14. Administrator Django w linii
- 15. Administrator Django edytujący pola w sposób tabelaryczny
- 16. Django: formset jako pole formularza
- 17. Administrator Django spersonalizuj zapytanie search_fields
- 18. Jak wyświetlić dodawanie modelu w formacie tabelarycznym w administratorze Django?
- 19. Django Binary lub pole modelu BLOB
- 20. Pole modelu Django: uporządkowana lista kluczy zagranicznych
- 21. Czy można wyświetlić tekst pomocy modelu jako atrybut tytułu na formularzach w Django?
- 22. Wybieralne, ale nie edytowalne pole tekstowe HTML.
- 23. Administrator Django - Wyłącz akcję "Dodaj" dla określonego modelu
- 24. Django get_or_create, jak powiedzieć popełnić = False
- 25. UUID jako wartość domyślna w modelu Django
- 26. Administrator Django GenericForeignKey wbudowany
- 27. Administrator Django i wyświetlanie miniatur obrazów
- 28. Jak reprezentować dwa pola modelu jako jedno pole formularza w Django?
- 29. Administrator Django - niestandardowy widok listy zmian
- 30. nowe pole false w Package.json
+1. Zwłaszcza, jeśli nie planujesz edytować pola w Admin. –