Noțiuni de bază cu Django - conexiunea admin - modul de a deveni un programator
În etapa anterioară am definit structuri de date pentru a stoca o listă de întrebări și răspunsuri la acestea.
Până în prezent, nu am făcut nimic pentru a putea lucra cu datele prin intermediul site-ului. Dar Django ne predosstavlyaet un sistem de management puternic pentru managementul datelor a site-ului nostru din cutie. Django Admin nu este destinat pentru vizitatori regulate. Mai degrabă, este un mijloc de simplificare a administratorului de a lucra cu date. Django creează automat o interfață pentru gestionarea datelor noastre bazate pe modele create de noi precum și să le creați în tabelele bazei de date corespunzătoare.
Activarea Django admin
Pentru a începe să utilizați zona de site-ul de administrare furnizate de Django, trebuie să îndeplinească mai întâi următoarele mai multe etape.
În primul rând, în fișierul de configurare settings.py proiect trebuie să decomentați linia django.contrib.admin
Acum trebuie să executați din nou comanda
Django va crea un tabel de bază de date care sunt necesare pentru o parte de administrare a site-ului.
Acum trebuie să editați fișierul mysite / urls.py pentru a informa Dajngo, codul pe care trebuie să suni când vom trece prin browser-ul la panoul de administrare.
Pentru acest raskomentiruem rândurile. Acum mysite / urls.py fișier ar trebui să arate astfel:
Șiruri a decomenta, sunt evidențiate cu caractere aldine.
Pentru lansarea site-ului nostru va îndeplini comanda
În consola, ar trebui să vedeți
Ar trebui să vedeți un prompt pentru a introduce un nume de utilizator și parole pentru conectarea la panoul de administrare Django
Mergem la panoul de administrare, folosind specificată în primul conectare pas și parola super-utilizator.
Crearea unei rădăcină Django admin
Dacă, din anumite motive, nu ați creat un superutilizator înainte de a putea face acest lucru rulând comanda consolă
Mergând în panoul de administrare, ar trebui să vedeți o imagine similară:
Puteți adăuga deja un utilizator pentru a gestiona site-ul și grupurile care definesc drepturile lor, precum și a schimba setările pentru site-ul. Dar încă nu puteți adăuga sau edita o persoană de contact de întrebări și răspunsuri de model.
Afișarea obiectelor din admin Django - conectăm modelele noastre
Pentru a obține acces pentru a schimba obiectele admin. o parte a site-ului, trebuie să le înregistrați în administrator al aplicației.
Creați un fișier nou într-un director numit sondaje admin.py. În fișierul, se introduce următorul text:
Acum reporniți serverul și reîmprospăta sau re-vizita panoul de administrare.
Comanda! Acum suntem disponibili pentru a crea și edita întrebări noi prin punctul Sondaje.
Django genereaza automat un formular web pe modelul de bază, care vă permite să introduceți toate datele necesare. În același timp, încă nu fie introduse pentru unele dintre câmpurile marcate ca obligatorii, formularul ne va reveni pentru a edita evidențiați un câmp pentru a introduce:
După completarea tuturor câmpurilor, și de a salva obiectul, informații despre acesta este stocat în baza de date.
Noul obiect apare în listă, dar nu arata foarte informativ:
Faptul că se folosește metoda __unicode __ () pentru a afișa informații despre site-ul Django. Creată de noi nu există o astfel de metodă de clasă Sondaj. Adăugați-l.
Adăugând numele obiectului
Pentru a afișa un nume informativ al obiectului, adăugați o metodă __ __unicode () cursuri Poll și de alegere.
Edit models.py, adăugând text cu litere aldine:
Acum, după actualizarea lista Sondaj obiecte de tip text este utilizat în zona de administrare, pe care am introdus ca o întrebare:
Adăugarea de obiecte legate
Pentru a putea adăuga răspunsuri noi prin panoul de administrare, suficient de fișier admin.py adăuga:
Acum, „Alegeri“ a apărut în admin Django. La adăugarea unui nou alegeri răspuns va trebui să selectați întrebarea corespunzătoare:
Cu toate acestea, acest lucru nu este foarte convenabil. Lista de selecție va emite toate întrebările care au fost stocate în baza de date. Mai mult decât atât, este logic să intre răspunsuri adăugarea de întrebare.
Hai să o facem.
În registru fișier remove admin.py () pentru clasa Choice și edita clasa de înregistrare Sondaj. Modificați textul de mai jos.
Alegerea Acum obiecte pot fi adăugate doar prin adăugarea problema, în timp ce Django a cerut să completeze o dată 3 opțiuni, și se adaugă mai mult, dacă este necesar.
Singura dată - clasa admin.StackedInline afișează toate câmpurile de mai jos una de alta, iar acest lucru ia o mulțime de spațiu. Django admin există o clasă TabularInline mai potrivită pentru un tabel de câmpuri de afișare.
Un timp pentru noi să aibă grijă de care se va afișa pagina principală a site-ului nostru. Ne întoarcem în continuare.