cd C:\Python\env1
. Scripts/activate
--Erstelle ein Projekt
django-admin startproject mysite
Mysite wird im aktuellen Verzeichnis erstellt.
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
--Top mysite: Sie können es mit einem beliebigen Namen im Stammverzeichnis erstellen. Kann gewechselt werden. --manage.py ・ ・ ・ Befehlszeilenprogramm zum Ausführen verschiedener Operationen des Django-Projekts. --mysite ・ ・ ・ Paket für dieses Projekt. --mysite / __ init__.py ・ ・ ・ Eine leere Datei, bei der es sich bei diesem Verzeichnis um Python handelt. --mysite / settings.py ・ ・ ・ Projekteinstellungsdatei. --mysite / urls.py ・ ・ ・ URL deklarieren. --mysite / asgi.py ・ ・ ・ Einstiegspunkt des ASGI-kompatiblen WEB-Servers, der das Projekt bereitstellt. --mysite / wsgi.py G ・ ・ WSGI-kompatibler WEB-Server-Einstiegspunkt für die Bedienung von Projekten.
--Gehen Sie zum obersten Mysite-Verzeichnis
cd mysite
--Starten Sie den Entwicklungsserver
python manage.py runserver
Greifen Sie nach erfolgreichem Start auf die URL zu (http://127.0.0.1:8000/). Wenn es eine Seite gibt, auf der die Rakete abhebt, ist sie erfolgreich.
--Erstellen Sie eine Anwendung
python manage.py startapp polls
Die Anwendung wird jetzt erstellt.
--Erstellen Sie eine Ansicht
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world. You're at the polls index.")
Ordnen Sie die URL zu, um die Ansicht aufzurufen.
--URL verknüpfen
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]
--Starten Sie den Server
python manage.py runserver
Überprüfen Sie nach dem Starten des Servers den Vorgang. (http: // localhost: 8000 / polls /) Sie können sehen, dass "Hallo Welt. Sie befinden sich am Umfrageindex." Angezeigt wird.
--SQLite ist standardmäßig in mysite / settings.py eingestellt.
python manage.py migrate
Die Tabelle wird erstellt. Erstellen Sie basierend auf den INSTALL_APPS-Einstellungen alle erforderlichen Tabellen gemäß den Datenbankeinstellungen in der Datei mysite / settings.py.
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)
Die einzelnen Klassenvariablen repräsentieren die Datenbankfelder des Modells.
INSTALLED_APPS = [
'polls.apps.PollsConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Führen Sie nach dem Einstellen den folgenden Befehl aus, um das Django-Modell wiederzugeben.
python manage.py makemigrations polls
Bei der Ausführung wird die Migration erstellt.
Migrations for 'polls':
polls/migrations/0001_initial.py
- Create model Question
- Create model Choice
Erstellt als polls / migrations / 0001_initial.py. Führen Sie Befehle aus, um das Datenbankschema automatisch zu verwalten.
python manage.py sqlmigrate polls 0001
Der Befehl sqlmigrate gibt SQL mit dem Namen der Migration als Argument zurück. Zeigt die SQL an, die ausgeführt wird, wenn sie reflektiert wird, was tatsächlich nicht reflektiert wird.
python manage.py migrate
Die Migration wird nicht angewendet, ergänzt die Migration und wird für die Datenbank ausgeführt. Synchronisieren.
import datetime
from django.db import models
from django.utils import timezone
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
def was_published_recently(self):
return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
class Choice(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
def __str__(self):
return self.choice_text
Wir haben dem Modell die Methode str () hinzugefügt, um die Anzeige im interaktiven Modus zu vereinfachen und als Objektdarstellung in Djangos automatisch generiertem Administrator zu verwenden.
--Starten Sie den interaktiven Modus
python manage.py shell
Starten Sie einen Dialog
>>> from polls.models import Choice, Question
>>> Question.objects.all()
>>> Question.objects.filter(id=1)
>>> Question.objects.filter(question_text__startswith='What')
>>> from django.utils import timezone
>>> current_year = timezone.now().year
>>> Question.objects.get(pub_date__year=current_year)
>>> Question.objects.get(pk=1)
>>> q = Question.objects.get(pk=1)
>>> q.was_published_recently()
>>> q = Question.objects.get(pk=1)
>>> q.choice_set.all()
>>> q.choice_set.create(choice_text='Not much', votes=0)
>>> q.choice_set.create(choice_text='The sky', votes=0)
>>> c = q.choice_set.create(choice_text='Just hacking again', votes=0)
>>> c.question
>>> q.choice_set.all()
>>> q.choice_set.count(
>>> Choice.objects.filter(question__pub_date__year=current_year)
>>> c = q.choice_set.filter(choice_text__startswith='Just hacking')
>>> c.delete()
Ich arbeite an Modellbeziehungen.
python manage.py createsuperuser
Bitte geben Sie den Benutzernamen entsprechend an
Benutzername: Benutzername
Geben sie ihre E-Mailadresse ein
Email address: [email protected]
Exampl.com ist ein Beispiel für einen Domainnamen, den jeder verwenden kann. Nach der Eingabe werden Sie zur Eingabe eines Passworts aufgefordert.
Password: **********
Password (again): *********
Superuser created successfully.
Damit ist die Erstellung des Administrators abgeschlossen.
--Starten Sie den Entwicklungsserver Wenn der Server nicht aktiv ist, tun Sie es
python manage.py runserver
Gehen Sie nach dem Start zu * http: // localhost: 8000 / admin / *.
Gruppen und Benutzer sind Inhalte, die vom Django-Authentifizierungsfunktionsframework django.contrib.auth bereitgestellt werden.
--Öffnen Sie polls / admin.py und bearbeiten Sie es.
Das Frageobjekt kann über eine Administrationsoberfläche angezeigt werden. Teilen Sie dem Administrator mit, dass Sie eine Schnittstelle haben.
from django.contrib import admin
from .models import Question
admin.site.register(Question)
Umfragen werden jetzt auf dem Verwaltungsbildschirm angezeigt.
-① Umfragen hinzugefügt -② Wenn Sie den Vorgang ausführen, wird er als Verlauf angezeigt.
--Press magst du Sushi? Kann auf verschiedene Arten aktualisiert werden
WEB-Anwendungsentwicklung mit Django-Entwicklung Teil 2 - >>>
Recommended Posts