0Pricing
Python Academy · Lekcja

Panel administracyjny Django

Zarządzaj danymi w panelu administracyjnym

Panel administracyjny Django to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 4 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 Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 4 lekcji w sumie.

Wbudowany panel administracyjny

Django zawiera zaawansowany panel administracyjny: automatycznie generowany interfejs internetowy do zarządzania danymi. To jedna z najbardziej cenionych funkcji Django.

# The admin gives you CRUD screens
# for your models with zero UI code
print('Django admin manages data out of the box')

Panel administracyjny jest już zainstalowany

Panel administracyjny znajduje się w django.contrib.admin, który domyślnie jest uwzględniony w INSTALLED_APPS, i jest podłączony w projektowym pliku urls.py.

# mysite/urls.py
from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]
print('admin/ is mapped to the admin site')

Tworzenie superużytkownika

Aby się zalogować, potrzebujesz konta administratora. Utwórz je za pomocą python manage.py createsuperuser i postępuj zgodnie z instrukcjami.

# python manage.py createsuperuser
# Username: admin
# Email: admin@example.com
# Password: ********
print('createsuperuser makes an admin login')

Logowanie

Uruchom serwer i odwiedź adres /admin/. Zaloguj się przy użyciu danych superużytkownika, aby przejść do panelu.

# python manage.py runserver
# Open http://127.0.0.1:8000/admin/
print('Visit /admin/ and log in')

Rejestrowanie modelu

Modele nie pojawią się w panelu administracyjnym, dopóki ich nie zarejestrujesz. Zrób to w pliku admin.py aplikacji za pomocą admin.site.register().

# blog/admin.py
from django.contrib import admin
from .models import Post

admin.site.register(Post)
print('Post now appears in the admin')

Zarządzanie danymi

Po zarejestrowaniu modelu otrzymujesz pełne ekrany CRUD: możesz wyświetlać wszystkie wiersze, dodawać nowe, edytować je i usuwać, a wszystko to bez pisania formularzy.

# In the admin you can:
# - view a list of all Posts
# - add a new Post
# - edit or delete existing ones
print('Full CRUD with no extra code')

Dostosowywanie za pomocą ModelAdmin

Klasa ModelAdmin dostosowuje sposób wyświetlania modelu. list_display określa, które kolumny są widoczne na liście.

from django.contrib import admin
from .models import Post

class PostAdmin(admin.ModelAdmin):
    list_display = ('title', 'created', 'published')

admin.site.register(Post, PostAdmin)
print('list_display picks the columns')

Wyszukiwanie i filtrowanie

Dodaj search_fields, aby uzyskać pole wyszukiwania, oraz list_filter, aby dodać filtry na pasku bocznym i ułatwić przeglądanie dużych zbiorów danych.

from django.contrib import admin
from .models import Post

class PostAdmin(admin.ModelAdmin):
    search_fields = ('title',)
    list_filter = ('published',)

admin.site.register(Post, PostAdmin)
print('Search box and sidebar filters added')

Dekorator register

Dekorator @admin.register() to przejrzysta alternatywa dla osobnego wywoływania admin.site.register().

from django.contrib import admin
from .models import Post

@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
    list_display = ('title',)
print('@admin.register is the decorator form')

Znaczenie __str__

Zdefiniuj __str__ w modelu, aby panel administracyjny wyświetlał czytelną etykietę zamiast „Post object (1)”.

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=200)
    def __str__(self):
        return self.title
print('__str__ gives a readable admin label')

Uprawnienia

Panel administracyjny respektuje uprawnienia użytkowników. Możesz tworzyć użytkowników personelu z ograniczonymi uprawnieniami, aby nie każdy miał pełny dostęp superużytkownika.

# Staff users (is_staff=True) can access the admin
# Permissions control which models they can edit
print('Permissions limit admin access')

Szybki sprawdzian

Sprawdź swoją wiedzę na temat panelu administracyjnego.

Podsumowanie

Użyłeś panelu administracyjnego Django do zarządzania danymi.

  • Panel administracyjny jest wbudowany i dostępny pod adresem /admin/
  • Konto utworzysz za pomocą createsuperuser
  • Zarejestruj modele w pliku admin.py, aby uzyskać ekrany CRUD
  • ModelAdmin dostosowuje kolumny, wyszukiwanie i filtry
  • Zdefiniuj __str__, aby uzyskać czytelne etykiety; uprawnienia ograniczają dostęp

Często zadawane pytania

Czy lekcja „Panel administracyjny Django” jest bezpłatna?

Tak — pełny tekst „Panel administracyjny Django” 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 Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Panel administracyjny Django”?

Zarządzaj danymi w panelu administracyjnym Ćwiczysz Python 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ąć Python Academy?

Nie wymagamy żadnego doświadczenia. Python 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 4 z 4.

Ile czasu zajmuje lekcja „Panel administracyjny Django”?

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 Python Academy?

Tak. Każda lekcja Python 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

  1. Projekty i aplikacje
  2. Modele i migracje
  3. Widoki i adresy URL
  4. Panel administracyjny Django
← Powrót do Python Academy