Python Academy · Oppitunti

Django Admin

Hallitse tietoja ylläpitosivustolla

Oppitunti 4/413 vaihetta

Django Admin on ilmainen Python Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Python Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Python Academy-kurssilla on yhteensä 4 oppituntia.

Sisäänrakennettu hallinta

Djangon mukana toimitetaan tehokas hallintasivusto: automaattisesti luotu verkkokäyttöliittymä tietojen hallintaan. Se on yksi Djangon pidetyimmistä ominaisuuksista.

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

Hallinta on jo asennettu

Hallinta sijaitsee paketissa django.contrib.admin, joka sisältyy oletusarvoisesti asetukseen INSTALLED_APPS ja on yhdistetty projektin tiedostoon 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')

Pääkäyttäjän luominen

Kirjautumista varten tarvitsette hallintatilin. Luokaa tili komennolla python manage.py createsuperuser ja vastatkaa kehotteisiin.

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

Sisäänkirjautuminen

Käynnistäkää palvelin ja avatkaa osoite /admin/. Kirjautukaa sisään pääkäyttäjän tunnuksilla päästäksenne hallintapaneeliin.

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

Mallin rekisteröinti

Mallit eivät näy hallinnassa, ennen kuin rekisteröitte ne. Tehkää tämä sovelluksen tiedostossa admin.py kutsulla 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')

Tietojen hallinta

Rekisteröinnin jälkeen saatte täydet CRUD-näkymät: voitte luetella kaikki rivit, lisätä uusia, muokata ja poistaa niitä ilman, että yhtään lomaketta tarvitsee kirjoittaa.

# 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')

Mukauttaminen ModelAdminilla

ModelAdmin-luokka mukauttaa mallin esitystapaa. list_display valitsee luettelonäkymässä näytettävät sarakkeet.

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')

Haku ja suodattimet

Lisätkää search_fields hakukenttää varten ja list_filter sivupalkin suodattimia varten, jotta suurissa tietojoukoissa on helpompi liikkua.

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')

register-dekoraattori

@admin.register()-dekoraattori on selkeä vaihtoehto erilliselle admin.site.register()-kutsulle.

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')

__str__ on tärkeä

Määritelkää mallille __str__, jotta hallinta näyttää luettavan nimen merkkijonon 'Post object (1)' sijaan.

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')

Käyttöoikeudet

Hallinta noudattaa käyttäjien käyttöoikeuksia. Voitte luoda rajoitetuin oikeuksin toimivia henkilökuntakäyttäjiä, jotta kaikilla ei ole pääkäyttäjän täydellisiä oikeuksia.

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

Pikatarkistus

Testatkaa tietonne hallinnasta.

Kertaus

Opitte hallitsemaan tietoja Djangon hallinnan avulla.

  • Hallinta on sisäänrakennettu, ja siihen pääsee osoitteessa /admin/
  • Luokaa tili komennolla createsuperuser
  • Rekisteröikää mallit tiedostossa admin.py saadaksenne CRUD-näkymät
  • ModelAdmin mukauttaa sarakkeita, hakua ja suodattimia
  • Määritelkää __str__ luettavia nimiä varten; käyttöoikeudet rajoittavat pääsyä
Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
76
Oppitunnit
320

Usein kysytyt kysymykset

Onko oppitunti ”Django Admin” ilmainen?

Kyllä – oppitunnin ”Django Admin” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Python Academy-kurssin, päivitä CoddyKit PROhon. Python Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Django Admin”?

Hallitse tietoja ylläpitosivustolla Harjoittelet Python Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Python Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Python Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”Django Admin”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Python Academy-oppitunnilla?

Kyllä. Jokainen Python Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Projektit ja sovellukset
  2. Mallit ja migraatiot
  3. Näkymät ja URL-osoitteet
  4. Django Admin
← Takaisin: Python Academy