[PYTHON] Django von vorne anfangen (Teil: 2)

Letztes Mal

Django ab Null \ (Teil: 1 ) \ -Qiita

Verweise

Erstellen Ihrer ersten Django-App, Teil 2|Django-Dokumentation| Django

Datenbankeinstellungen

mysite/setting.py

INSTALLED_APPS Einstellungen für wichtige Teile der Anwendung. Details unten --django.contrib.admin - Administrationsseite (admin) --django.contrib.auth --Authentifizierungssystem --django.contrib.contenttypes - Inhaltstyp-Framework --django.contrib.sessions - Sitzungsrahmen --django.contrib.messages --Message Framework --django.contrib.staticfiles --Static Dateiverwaltungsframework

Eine Tabelle erstellen

Verwenden Sie den folgenden Befehl, um eine Datenbanktabelle zu erstellen.

python manage.py migrate

-Der Befehl "migrieren" bezieht sich auf die obigen INSTALLED_APPS-Einstellungen und erstellt alle erforderlichen Datenbanken gemäß den Datenbankeinstellungen in der Datei "mysite / settings.py".

Datenbankmodell generieren

from django.db import models


class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published')


class Choice(models.Model):
    question = models.ForeignKey(Question, on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)

--CharFiled, IntegerField usw. geben an, welche Art von Datentyp gespeichert wird.

Reflektieren Sie die Anwendung im Projekt

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Modelländerungen widerspiegeln

Führen Sie den folgenden Code aus, um die Änderungen in Django in Form einer Migration zu speichern

python manage.py makemigrations polls

 python manage.py check 

Befehl zum Überprüfen, ob ein Problem mit dem Projekt vorliegt


Führen Sie nach dem Erstellen der Modelltabelle die Migration erneut aus, um die Modelltabelle in der Datenbank zu erstellen.

3 Schritte zum Implementieren von Modelländerungen

Warum sind die Befehle zum Erstellen und Anwenden von Migrationen getrennt?

Verbesserter Komfort der Datenbank-API

Wenn Sie ">>> Question.objects.all ()" in der Shell ausführen Die Ausgabe ist wie folgt. <QuerySet [<Question: Question object (1)>]> Ich weiß nicht, wie die Datenbanktabelle aussieht

Fügen Sie also die Methode __str __ zu Frage und Auswahl hinzu

from django.db import models

class Question(models.Model):
    # ...
    def __str__(self):
        return self.question_text

class Choice(models.Model):
    # ...
    def __str__(self):
        return self.choice_text

polls/models.py



from django.db import models
from django.utils import timezone


class Question(models.Model):
    # ...
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)

Erstellen Sie einen Administrator

python manage.py createsuperuser

Machen Sie es auf admin bearbeitbar

from django.contrib import admin

from .models import Question

admin.site.register(Question)

Recommended Posts

Django von vorne anfangen (Teil: 2)
Django von vorne anfangen (Teil: 1)
Django Memo # 1 von Grund auf neu
Erstellen Sie mit Django eine Bulletin-Board-App von Grund auf neu. (Teil 2)
Erstellen Sie mit Django eine Bulletin-Board-App von Grund auf neu. (Teil 3)
Lassen Sie Code Day75 von vorne beginnen "15.3 Sum"
Django startete Teil 1
Django startete Teil 4
Geschäftseffizienz von Grund auf mit Python
Lassen Sie Code Day 29 "46. Permutationen" von vorne beginnen
"Deep Learning from Grund" Memo zum Selbststudium (Teil 12) Deep Learning
Lassen Sie Code Day 27 "101. Symmetric Tree" von vorne beginnen
Micro Service mit GCP auf RoR von Grund auf neu
Lassen Sie Code Day 41 "394. Decode String" ab Null
Lassen Sie Code Day 25 "70. Climbing Stairs" von vorne beginnen
Lassen Sie Code Day69 von vorne beginnen "279. Perfect Squares"
Lassen Sie Code Day 34 von vorne beginnen "118. Pascals Dreieck"
Lassen Sie Code Day85 von vorne beginnen "6. Zick-Zack-Konvertierung"
Lassen Sie Code Day20 von vorne beginnen "134. Tankstelle"
Maschinelles Lernen von Grund auf neu (maschinelles Lernen mit Kaggle)
Lassen Sie Code Day 88 "139. Word Break" von vorne beginnen
Lassen Sie Code Day 28 "198. House Robber" von vorne beginnen
Lassen Sie Code Day 39 "494. Target Sum" von vorne beginnen
Lassen Sie Code Day 36 "155. Min Stack" von vorne beginnen
Lassen Sie Code Tag 17 "169. Mehrheitselement" von vorne beginnen
Lassen Sie Code Tag 33 "1. Zwei Summe" ab Null
Deep Learning von Grund auf neu
Keras aus dem Nichts
[Python] Lesen des Django-Quellcodes Ansicht ab Null ①
Lassen Sie Code Tag 23 "226. Binären Baum umkehren" von vorne beginnen
Lassen Sie Code Day8 ab Null "1302. Deepest Leaves Sum"
Lassen Sie Code Tag 22 ab Null "141. Linked List Cycle"
Ich habe Django von Grund auf neu eingerichtet (Vagrant, Centos, Python3)
Lassen Sie Code Tag 30 von vorne beginnen "234. Palindrome Linked List"
Lassen Sie Code Day 32 "437. Path Sum III" von vorne beginnen
Lassen Sie Code Day68 von vorne beginnen "709. In Kleinbuchstaben"
Deep Learning von Grund auf 1-3 Kapitel
Lassen Sie Code Tag 26 von vorne beginnen "94. Binary Tree Inorder Traversal"
Lassen Sie Code Day 46 von Grund auf neu beginnen "406. Rekonstruktion der Warteschlange nach Höhe"
ChIP-seq-Analyse ab Null
Lassen Sie Code Day 31 von vorne beginnen "581. Kürzestes unsortiertes kontinuierliches Subarray"
Bereitstellen von Django + Reagieren Sie von Grund auf auf GKE (1) Backend-Entwicklung - Nginx + Django
Bereitstellen von Django + Reagieren Sie von Grund auf auf GKE: Inhaltsverzeichnis
Keras ab dem 5. Platz
Verwenden Sie das Django-Modell vom Interpreter
Keras ausgehend von nichts 1 ..
Lassen Sie Code Day 38 von vorne beginnen "208. Implementieren Sie Trie (Präfixbaum)"
Lassen Sie Code Day3 ab Null "1313. Decompress Run-Length Encoded List"
Keras ab nichts 4.
Vorlagenregistrierung von Django Bootstrap
Keras ab nichts 2.
Ich habe versucht, Perceptron Teil 1 [Deep Learning von Grund auf neu] zu implementieren.
Keras ab dem 3. Platz
Lassen Sie Code Day 65 "560. Subarray Sum Equals K" von vorne beginnen
Lassen Sie Code Day4 von vorne beginnen "938. Range Sum of BST"
Stellen Sie Django + React von Grund auf auf GKE bereit. (3) Erstellen Sie ein GCP-Projekt
Lua-Version Deep Learning von Grund auf neu Teil 6 [Inferenzverarbeitung für neuronale Netze]
Re: Heroku Leben von Grund auf neu mit Flask ~ PhantomJS bis Heroku ~
Lassen Sie Code Day 77 "1502. Kann arithmetische Fortschritte von der Sequenz machen" ab Null
Lassen Sie Code Day 76 von vorne beginnen "3. Längste Teilzeichenfolge ohne Wiederholung von Zeichen"