Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (3) [Anwendungserstellung / DB-Einstellung]

Zusammensetzung der Kommentarartikel

No. Titel
1 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (1) [Umgebungskonstruktion]
2 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (2) [Projekterstellung]
3 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (3) [Anwendungserstellung / DB-Einstellung]
4 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (4) [Einführung in Routing-Einstellungen und MTV-Entwurfsmuster]
5 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (5) [Einführung in den DB-Betrieb mit Django-Shell]
6 Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (6) [Vervollständigung des MTV-Entwurfsmusters]

Entwicklungsumgebung

Wir werden mit der Diskussion unter der Annahme einer Mac-Umgebung fortfahren.

Überprüfen Sie die Python-Version wie folgt.

$ python3 --version
Python 3.5.2

Eine Anwendung erstellen

Dieses Mal erstellen wir zunächst eine Django-Anwendung.

Erstellen Sie eine Anwendung in Ihrem Projekt. Hier erstellen wir einen Blog nach dem Django Girls Tutorial.

$ python3 manage.py startapp blog

Die Verzeichnisstruktur ist wie folgt.

myvenv
├── bin
├── blog
├── db.sqlite3
├── include
├── lib
├── manage.py
├── myapp
└── pyvenv.cfg

Ändern Sie nach dem Erstellen der Anwendung zunächst die Einstellungsdatei. Hiermit definieren Sie die Anwendung, die auf Django verwendet werden soll.

Suchen Sie den Code unten und fügen Sie unten `` `blog``` hinzu.

myapp/settings.py


# Application definition
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog',
)

Modell erstellen

blogZu verwenden inmodelIch werde machen. modelIst es ein praktisches Objekt, das Daten speichern kann? Sie können eine Methode in diesem `Modell selbst haben und dank dieses Modells``` die Kommunikation mit DB verwalten, ohne sich um SQL usw. kümmern zu müssen.

Definieren wir nun das `Model``` für das` blog``.

blog/models.Öffnen Sie py und schreiben Sie es wie folgt um.




#### **`blog/models.py`**
```py

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

class Post(models.Model):
    author = models.ForeignKey('auth.User')
    title  = models.CharField(max_length=200)
    text   = models.TextField()
    created_date = models.DateTimeField(default=timezone.now)
    published_date = models.DateTimeField(blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title

Die Erklärung ist hier etwas lang, aber das Folgende ist nur bei Bedarf ein Auszug aus der Erklärung von Django Girls Tutorial.

class Post (models.Model): --Diese Zeile definiert dieses Modell (dies ist das Objekt).

  • class ist ein Schlüsselwort, das angibt, dass ein Objekt definiert ist.

Definieren wir die Eigenschaft:  title、text、created_date、published_date、author Zuerst müssen Sie sich für den Feldtyp entscheiden. Text? Nummer? Datum? Beziehungen zu anderen Objekten, z. B. Benutzern

Auf diese Weise scheint es die Art der im Modell verwendeten Eigenschaft zu deklarieren.

Nebenbei bemerkt, in Ruby on Rails,

$ rails g model post author title text

Da die Migrationsdatei durch Deklarieren von like erstellt wurde, scheint sie im Vergleich dazu etwas problematisch zu sein.

Nachdem wir das Modell definiert haben, erstellen wir eine Migrationsdatei.

$ python3 manage.py makemigrations blog
Migrations for 'blog':
  0001_initial.py:
    - Create model Post

Auf diese Weise kann Django eine Migrationsdatei erstellen, die zur Migration in Ihre Datenbank gestellt wird.

$ python3 manage.py migrate blog
Operations to perform:
  Apply all migrations: blog
Running migrations:
  Rendering model states... DONE
  Applying blog.0001_initial... OK

Das `` `Post``` Modell wird nun erfolgreich in der DB (SQLite) wiedergegeben.

DB-Bestätigung

In Django können Sie das Modell über den Browser mit der GUI überprüfen, sodass auch Anfänger es leicht verstehen können. Dies scheint Django admin zu heißen.

Öffnen Sie zunächst die Datei `` `blog / admin.py``` und ändern Sie den Django-Administrator für das gerade erstellte Post-Modell.

blog/admin.py


from django.contrib import admin
from .models import Post

# Register your models here.
admin.site.register(Post)

Damit sind die Einstellungen abgeschlossen.

Starten Sie den Server und greifen Sie über Ihren Browser auf den Django-Administrator (http://127.0.0.1:8000/admin) zu.

Serverstart


$ python3 manage.py runserver
スクリーンショット 2016-11-11 2.45.57.png

Hoffentlich können Sie auf eine solche Webseite zugreifen. Der Anmeldebildschirm wird jedoch angezeigt, und Sie können sich nicht erinnern, ihn eingestellt zu haben, oder? Das sollte es sein, Sie müssen einen separaten `` `Superuser``` (Site-Administrator) erstellen, um sich anzumelden.

Jetzt erstellen wir `` `Superuser```.

Einen Superuser erstellen


$ python manage.py createsuperuser
Username (leave blank to use 'your_name'): admin
Email address: [email protected] #Stellen Sie die E-Mail-Adresse individuell ein
Password: #Passwort eingeben
Password (again): #Passwort erneut
Superuser created successfully.

Damit ist die Erstellung des `Superuser `abgeschlossen. Gehen Sie erneut zu Django admin (http://127.0.0.1:8000/admin) und versuchen Sie, sich anzumelden.

スクリーンショット 2016-11-11 2.52.04.png

Melden Sie sich mit dem zuvor erstellten `` `Superuser``` an.

スクリーンショット 2016-11-11 2.52.11.png

Wenn Sie sich erfolgreich anmelden können, können Sie auf einen solchen Bildschirm zugreifen. Der Modellname wurde als "Post" deklariert, wird jedoch automatisch als "Posts" pluralisiert.

Versuchen wir, einen Artikel hinzuzufügen, indem wir "Beiträge" auf dem Bildschirm hinzufügen. スクリーンショット 2016-11-11 2.56.16.png

Nach der Registrierung wurde ein neuer Artikel in der DB erstellt. スクリーンショット 2016-11-11 3.01.20.png

Damit ist die DB-Bestätigung abgeschlossen. Wenn Sie von nun an die Datenbank überprüfen möchten, bitten Sie den Django-Administrator, Ihnen zu helfen.

Jetzt können Sie das Modell festlegen, es in der Datenbank widerspiegeln und überprüfen.

Nächstes Mal werde ich eine Originalvorlage erstellen und zu dem Punkt gehen, an dem ich die Ansichtsseite bearbeiten kann.

Nächster Kommentarartikel

Erklärung der Python-Webanwendung (Django) auf leicht verständliche Weise auch für Anfänger (4) [Einführung in Routing-Einstellungen und MTV-Entwurfsmuster]

Verweise

Bonus

Wir warten darauf, dass Sie uns folgen!

Serviceeinführung Bitte kontaktieren Sie uns, wenn Sie an "Kikagaku" interessiert sind, einem Einzelunterricht für maschinelles Lernen, mit dem Sie "Mathematik → Programmieren → Webanwendung" gleichzeitig lernen können.

Recommended Posts

Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (3) [Anwendungserstellung / DB-Einstellung]
Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (2) [Projekterstellung]
Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (1) [Umgebungskonstruktion]
Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (5) [Einführung in den DB-Betrieb mit Django-Shell]
Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (6) [Vervollständigung des MTV-Entwurfsmusters]
Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (4) [Einführung in Routing-Einstellungen und MTV-Entwurfsmuster]
Erstellen Sie eine Webanwendung mit Django
[Für Anfänger] Zusammenfassung der Standardeingabe in Python (mit Erklärung)
Web Scraping für Anfänger in Python (1)
Web Scraping für Anfänger in Python (4) -1
[Python] Protokoll des Studientreffens für Anfänger (7/15)
Web-Scraping durch Anfänger mit Python (4) -3 GCE VM-Instanzerstellung und Scraping auf VM
[Python] Webanwendungsdesign für maschinelles Lernen
WebApi-Erstellung mit Python (CRUD-Erstellung) Für Anfänger
Erläuterung zum Erstellen einer Anwendung zum Anzeigen von Bildern und Zeichnen mit Python
[Für Anfänger] Versuchen Sie Web Scraping mit Python
Entwicklung einer WEB-Anwendung mit Django [Erstellung des Admin-Bildschirms]
Django Tutorial Zusammenfassung für Anfänger von Anfängern ① (Projekterstellung ~)
[Python] Webanwendung von 0! Hands-on (1) -Design, DB-Konstruktion-
Einfaches Verständnis von Python für & Arrays (für Super-Anfänger)
[Python] Fehlerbehebung für Anfänger beim Studium der Webanwendung von Django
Grundlegende Geschichte der Vererbung in Python (für Anfänger)
Web Scraping für Anfänger in Python (1) Verbesserte Version
(Python) Versuchen Sie, eine Webanwendung mit Django zu entwickeln
Zusammenfassung der Vorverarbeitungsmethoden für Python-Anfänger (Pandas-Datenrahmen)
Webanwendung erstellt mit Python3.4 + Django (Teil.1 Umgebungskonstruktion)
[Linux] Grundlagen der Berechtigungseinstellung von chmod für Anfänger
Erläuterung zum NoReverseMatch-Fehler in "Python Django Super Introduction"
Web-Scraping für Anfänger mit Python (4) --2 Scraping auf Cloud Shell
Django Python Web Framework
Anwendung von Python 3 vars
OpenCV für Python-Anfänger
[Für Anfänger] Grundlagen von Python erklärt durch Java Gold Teil 2
Python x Flask x Tensorflow.Keras Web-App, die Katzenrassen vorhersagt 2
■ Kaggle-Übung für Anfänger - Einführung von Python - von Google Colaboratory
[Python] Die größten Schwächen und Nachteile von Google Colaboratory [Für Anfänger]
[Python] Einführung in die Diagrammerstellung mit Corona-Virendaten [Für Anfänger]
(Für Anfänger) Versuchen Sie, mit Django eine einfache Web-API zu erstellen
[Für Anfänger] Grundlagen von Python erklärt durch Java Gold Teil 1