Leicht verständliche Erklärung der Python-Webanwendung (Django) auch für Anfänger (2) [Projekterstellung]

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) [Routeneinstellung / Einführung in 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

Projekterstellung

Lassen Sie uns die Verzeichnisstruktur einfach überprüfen, um das letzte Mal zu überprüfen.

Überprüfen Sie den Speicherort und die Verzeichnisstruktur


$ pwd
/Users/#{myname}/Desktop/sample_app/myapp
$ tree -L 1 .
.
├── bin
├── include
├── lib
└── pyvenv.cfg

Jetzt erstellen wir ein Django-Projekt. Übrigens, lassen Sie uns fortfahren, während wir die Änderungen in der Verzeichnisstruktur überprüfen.

Projekterstellung


$ django-admin startproject myapp .
$ ls
bin   include   lib   manage.py   myapp   pyvenv.cfg
$ tree -L 1 .
.
├── bin
├── include
├── lib
├── manage.py
├── myapp
└── pyvenv.cfg

myappVerzeichnis wurde hinzugefügt. Sie können auch sehen, dass `manage.py``` ebenfalls hinzugefügt wurde. Übrigens ist `.``` kein Tippfehler, sondern repräsentiert das Verzeichnis am aktuellen Speicherort (aktuelles Verzeichnis).

manage.py ist ein Skript für die Site-Verwaltung.


 Auf diese Weise können Sie einen Webserver auf Ihrem Computer ausführen, ohne andere Software vorbereiten zu müssen.
 Ähnlich dem Befehl Ruby on Rails Rails.

 Überprüfen Sie auch den Inhalt der erstellten `` `myapp```.


#### **`Überprüfen Sie den Inhalt des myapp-Verzeichnisses`**
```bash

$ tree -L 1 myapp/
myapp/
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py

myapp/urls.py ist eine Einstellungsdatei, die eine Datei mit einer URL verknüpft.


 Ähnlich wie Ruby on Rails `` `config / routen.rb```.


#### **`myapp/settings.py ist die Konfigurationsdatei der Anwendung.`**
```py ist die Konfigurationsdatei der Anwendung.

 Ähnlich wie Ruby on Rails `` `config / application.rb```.

# Zeitzone ändern

 Bearbeiten Sie zuerst diese `` `myapp / settings.py```.
 Suchen Sie die folgenden drei in `` `myapp / settings.py``` und ändern Sie sie.


#### **`Ändern Sie die Zeitzone nach Japan`**
```bash

LANGUAGE_CODE = 'ja'
TIME_ZONE = 'Asia/Tokyo'
USE_TZ = False  #Wechseln Sie aufgrund der UTC-Zeitzone standardmäßig zu False

Datenbank (DB)

In der Datenbank werden die von der Anwendung verwendeten Daten gespeichert. Normalerweise konfigurieren Sie die Datenbank für jede Webanwendung.

Typ der Datenbanksoftware

Sie können die zu speichernden Daten in eine Textdatei wie Notepad schreiben, dies ist jedoch praktisch und die Software zum Speichern der Datenbank ist kostenlos verfügbar. Ich denke, die folgenden drei sind berühmte Datenbanksoftware.

MySQL und PostgreSQL sind schnell und praktisch. Es wird daher empfohlen, beim Erstellen einer Produktionsumgebung eine der beiden Methoden zu verwenden (wobei auf den Server verwiesen wird, auf den der Benutzer zugreift). Es ist jedoch erforderlich, die Datenbanksoftware getrennt von Django einzustellen, was für Anfänger etwas schwierig sein kann. Daher werden wir mit der Anwendungserstellung mit SQLite fortfahren, für die fast keine Einstellungen erforderlich sind.

Wenn Sie eine kleine Anwendung haben (z. B. etwa 100 Benutzer), kann SQLite diese mit viel Platz verarbeiten, sodass diesmal überhaupt kein Problem auftritt. Wenn Sie sich an das Erstellen von Webanwendungen gewöhnt haben und sich der Leistungssteigerung bewusster werden, sollten Sie MySQL und PostgreSQL in Betracht ziehen.

Datenbankeinstellungen

Wenn Sie SQLite verwenden, sind die Einstellungen bereits in `` `myapp / settings.py``` beschrieben.

myapp/settings.py


DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

Lassen Sie uns nun die Datenbank migrieren. Sie kennen das Wort Migration möglicherweise nicht, aber es gibt eine Datei, in der die Befehle für die DB-Einstellung zusammengefasst sind, und es handelt sich um ein Image, das es sofort durch Migration ausführt.

DB migrieren


$ python manage.py migrate
Operations to perform:
  Synchronize unmigrated apps: staticfiles, messages
  Apply all migrations: admin, contenttypes, auth, sessions
Synchronizing apps without migrations:
  Creating tables...
    Running deferred SQL...
  Installing custom SQL...
Running migrations:
  Rendering model states... DONE
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying sessions.0001_initial... OK

Sie haben jetzt eine Datenbank erstellt. Wenn Sie an einem Webframework arbeiten, ist es sehr einfach, eine einzelne Datenbank einzurichten. Ursprünglich ist es schwierig, einfach den SQL-Befehl für die Datenbankeinstellung einzugeben (der relativ lang und schwer zu lesen ist), eine Datenbank zu erstellen, eine Tabelle zu erstellen, eine Spalte zu erstellen, einen Index zu erstellen usw.

Sie müssen es von der detaillierten Struktur im Inneren verstehen! Ich bin mir sicher, dass einige von Ihnen das sagen, aber ich persönlich mag den Lernstil, aus dem äußeren Rahmen zu lernen und die Details kennenzulernen, wenn Sie sich daran gewöhnen. Deshalb werde ich dieses Mal diese praktischen Funktionen verwenden. Gehen.

Starten Sie den Server

Nach dem Erstellen des Projekts und dem Festlegen der Datenbank ist es sehr einfach, aber eine Webanwendung ist abgeschlossen.

Beginnen wir den Server zunächst mit dem folgenden Befehl:

Starten Sie den Server


$ python3 manage.py runserver
Performing system checks...
System check identified no issues (0 silenced).
November 09, 2016 - 03:04:37
Django version 1.8, using settings 'myapp.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Wurde der Server so erfolgreich gestartet? Alles was Sie tun müssen, ist `python manage.py runserver``` einzugeben. Ähnlich wie Ruby on Rails `Rails Server```.

Da die IP-Adresse und die Portnummer dieses Mal nicht angegeben werden, können Sie den Betrieb der Webanwendung überprüfen, indem Sie auf die folgende URL zugreifen, die in Django standardmäßig verwendet wird. http://127.0.0.1:8000/

Geben Sie nun diese URL in Ihren Browser ein, um darauf zuzugreifen. スクリーンショット 2016-11-09 3.08.06.png

Hoffentlich wird der folgende Bildschirm im Browser angezeigt. スクリーンショット 2016-11-09 3.08.19.png

Sie haben mindestens eine Webanwendung mit Django erstellt.

Ab dem nächsten Mal werden wir dieses Projekt bearbeiten und als Original-Webanwendung fertigstellen.

Nächster Kommentarartikel

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

Verweise

Bonus

Wir warten darauf, dass Sie uns folgen!

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

Recommended Posts

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 (3) [Anwendungserstellung / DB-Einstellung]
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 (6) [Vervollständigung des MTV-Entwurfsmusters]
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 (4) [Einführung in Routing-Einstellungen und MTV-Entwurfsmuster]
Django Tutorial Zusammenfassung für Anfänger von Anfängern ① (Projekterstellung ~)
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] Webanwendungsdesign für maschinelles Lernen
WebApi-Erstellung mit Python (CRUD-Erstellung) Für Anfänger
[Für Anfänger] Versuchen Sie Web Scraping mit Python
Web-Scraping durch Anfänger mit Python (4) -3 GCE VM-Instanzerstellung und Scraping auf VM
Erläuterung zum Erstellen einer Anwendung zum Anzeigen von Bildern und Zeichnen mit Python
Entwicklung einer WEB-Anwendung mit Django [Erstellung des Admin-Bildschirms]
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
Zusammenfassung der Vorverarbeitungsmethoden für Python-Anfänger (Pandas-Datenrahmen)
Webanwendung erstellt mit Python3.4 + Django (Teil.1 Umgebungskonstruktion)
Erläuterung zum NoReverseMatch-Fehler in "Python Django Super Introduction"
Web-Scraping für Anfänger mit Python (4) --2 Scraping auf Cloud Shell
Python Lehrbuch für Anfänger
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
■ 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
Lernablauf für Python-Anfänger
Python3-Umgebungskonstruktion (für Anfänger)
Vergleich von 4 Arten von Python-Webframeworks
Übersicht über Docker (für Anfänger)
Python #Funktion 2 für Super-Anfänger
Grundlegende Python-Grammatik für Anfänger
100 Pandas klopfen für Python-Anfänger
Python #Funktion 1 für Super-Anfänger
Webanwendung mit Python + Flask ② ③
Python #Liste für Super-Anfänger
~ Tipps für Python-Anfänger mit Liebe von Pythonista ③ ~
Webanwendung mit Python + Flask ④
Entwicklung einer WEB-Anwendung mit Django [Daten vom Verwaltungsbildschirm hinzufügen]
[Python Machine Learning] Empfehlung zur Verwendung von Spyder für Anfänger (Stand August 2020)
Python x Flask x PyTorch Einfacher Aufbau einer Webanwendung zur Nummernerkennung
Python-Technik für diejenigen, die Anfänger loswerden wollen
Automatische Erstellung des Monatskalenders 2021 (Nachfüllung für Systemnotizbuch) durch Python