Rejestrowanie modeli za pomocą admin.site
Umożliwić edycję modeli w panelu administracyjnym
Rejestrowanie modeli za pomocą admin.site to bezpłatna lekcja Django Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Django Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Django Academy zawiera 4 lekcji w sumie.
Pusty pulpit
Obecnie panel administracyjny pokazuje tylko użytkowników i grupy. Aby zarządzać własnymi danymi, musisz zarejestrować każdy model, tak aby panel administracyjny go rozpoznawał.
Gdzie rejestrować modele
Każda aplikacja ma własny plik admin.py. To właśnie w nim informujesz Django, które modele powinny pojawić się w panelu administracyjnym.
Zaimportuj narzędzie
Najpierw zaimportuj moduł administracyjny. Obiekt admin jest punktem dostępu do rejestrowania modeli i dostosowywania witryny.
from django.contrib import adminZaimportuj model
Następnie zaimportuj model, którym chcesz zarządzać. Pobierz go z modułu models swojej aplikacji, aby plik admin.py mógł się do niego odwoływać.
from .models import PostZarejestruj model
Teraz przekaż model do panelu administracyjnego. Wywołanie admin.site.register() od razu dodaje ten model do pulpitu.
admin.site.register(Post)Zobacz efekt
Odśwież stronę /admin, a Twój model pojawi się na liście wraz z wbudowanymi ekranami dodawania, edytowania i usuwania. Nie są potrzebne żadne dodatkowe widoki. ✨
Zarejestruj wiele modeli
Masz kilka modeli? Po prostu zaimportuj każdy z nich i ponownie wywołaj register. Każde wywołanie register zapewnia danemu modelowi osobną sekcję w panelu administracyjnym.
admin.site.register(Author)
admin.site.register(Tag)Sposób z dekoratorem
Istnieje również prostszy zapis. Dekorator @admin.register rejestruje model bezpośrednio nad jego klasą administracyjną w jednym kroku.
@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
passPrzyjazne nazwy
Panel administracyjny wyświetla każdy wiersz za pomocą metody __str__ modelu. Dobrze zdefiniowana metoda __str__ zamienia nieczytelne wiersze w zrozumiałe etykiety.
def __str__(self):
return self.titleModel już zarejestrowany
Jeśli zarejestrujesz ten sam model dwukrotnie, Django zgłosi wyjątek AlreadyRegistered. Każdy model może być przekazany dokładnie do jednego wywołania register.
Nie trzeba uruchamiać ponownie
Serwer deweloperski automatycznie przeładowuje się po zapisaniu pliku admin.py, więc wystarczy odświeżyć stronę. Nowo zarejestrowany model pojawi się od razu.
Szybkie sprawdzenie
Jak sprawić, aby model pojawił się w panelu administracyjnym?
Podsumowanie
W pliku admin.py zaimportowałeś model i zarejestrowałeś go, dzięki czemu pojawił się na pulpicie wraz z pełnymi ekranami CRUD. To podstawowy sposób pracy z panelem administracyjnym. 🎉
Często zadawane pytania
Czy lekcja „Rejestrowanie modeli za pomocą admin.site” jest bezpłatna?
Tak — pełny tekst „Rejestrowanie modeli za pomocą admin.site” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Django Academy, przejdź na CoddyKit PRO. Kurs Django Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Rejestrowanie modeli za pomocą admin.site”?
Umożliwić edycję modeli w panelu administracyjnym Ćwiczysz Django Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Django Academy?
Nie wymagamy żadnego doświadczenia. Django Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Rejestrowanie modeli za pomocą admin.site”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Django Academy?
Tak. Każda lekcja Django Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- createsuperuser i logowanie
- Rejestrowanie modeli za pomocą admin.site
- Dostosowywanie ModelAdmin
- Inlines i pola tylko do odczytu