[PYTHON] MVC-Model Edition, um nur mit Voreingenommenheit von 0 zu lernen

Warum erinnern Sie sich für diejenigen unter Ihnen, die vom MVC-Framework erschöpft sind, nicht mit Ihrem eigenen Urteilsvermögen und Vorurteil daran? Natürlich wird mein Denken stark verzerrt sein, aber ich garantiere, dass es eine interessante Erfahrung sein wird. Dieses Mal werde ich Django als Beispiel verwenden.

Der Kern von MVC wäre in einem Wort so "HTML, das bis zu einem gewissen Grad mit Logik funktioniert, die in codierte ER-Diagramme unterteilt ist" Lassen Sie uns am Beispiel von Model erklären, was an diesem Kerl großartig ist. View und Controller sind sicherlich großartige Technologien, aber sie sind nicht mit der Leistung von Model vergleichbar.

Versuchen Sie, das Schema mit vollem Scratch-PHP zu ändern

Sie gehörten zum Bereich des Schreibens von Code mit vollem Scratch-PHP Mein Chef bittet mich, das SQL-Schema zu ändern In diesem Fall müssen Sie Folgendes tun:

  1. Aktualisieren Sie das ER-Diagramm in Excel
  2. Aktualisieren Sie die Datenbank mit SQL-Anweisungen
  3. Überprüfen Sie die Datenbank
  4. Führen Sie den Test durch (kann je nach Standort ein manueller Test sein)
  5. Es ist Mitternacht. Du kannst endlich nach Hause gehen

Für diejenigen, die das ER-Diagramm nicht kennen, ist es ungefähr ein verwandtes RDBMS-Diagramm. Dies in Excel zu machen ist nur ein Schmerz. Außerdem ändert es sich Raw SQL-Anweisungen sind Legacy-Dateien, die Sie derzeit nicht berühren möchten Ich möchte die Datenbank nicht überprüfen können Prüfung? Ist es sowieso manuell? Bitte vergib mir schon Als ich endlich nach Hause kam, hatte ich nur noch Schlafzeit Lassen Sie uns einen so beschissenen Tag loswerden

Demonstrieren Sie die Kraft des Modells

Sie gehörten zu der Site, die sich mit Django befasste Mein Chef hat mich gebeten, das SQL-Schema zu ändern In diesem Fall müssen Sie nur Folgendes tun

  1. Versuchen Sie, das Schema in Django zu ändern
  2. Schreiben Sie die Datenbank neu ("migrieren". Generieren Sie automatisch so etwas wie eine moderne SQL-Anweisung und schreiben Sie das Schema neu).
  3. Führen Sie den Test durch
  4. Auf Wiedersehen mittags

Es ist eine Lüge, aber leider wahr für das vollständige Scratch-Schreiben von PHP Sie müssen lediglich den Code des ER-Diagramms mit dem Namen Model neu schreiben, migrieren und testen. Vielen Menschen fällt es möglicherweise schwer, "Migrieren" zu hören, aber Sie müssen nur das Terminal öffnen und die folgenden zwei Zeilen eingeben.

python manage.py makemigrations
python manage.py migrate

Dies allein hat das SQL-Schema geändert. Danach können Sie es einfach durch Testen von der Site entfernen

Versuch es

Lassen Sie uns diese wunderbare Funktion erleben

Ihr Chef sagte Ihnen: "Erstellen Sie ein Modell für eine einfache TODO-App." Als Ergebnis der Organisation wurde mir klar, dass es ausreicht, eine Tabelle mit Benutzern und TODO sowie einen externen Schlüssel zu haben.

Lassen Sie uns die Qual des Schreibens in vollem PHP stoppen. Springe plötzlich in Django.

Zuerst haben Sie beschlossen, ein Modell zu schreiben Als Ergebnis habe ich den folgenden Code geschrieben

models.py


from django.db import models

class User(models.Model):
    name = models.CharField(max_length=20)
    password = models.CharField(max_length=20)

class Todo(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    text = models.CharField(max_length=140)

Streng falscher Code (Django wird standardmäßig mit dem Modell des Benutzers geliefert, es reicht aus, um es einzuziehen, und das Passwort ist nicht verschlüsselt), aber es ist leicht zu erklären und die Augen des Chefs sind vor allem. Es scheint betrogen zu sein, also wird es in Ordnung sein Um die Bedeutung des Codes zu erklären, wird in der ersten Zeile die Modellfunktion von Django abgerufen und geerbt. CharField ist nur ein Zeichenfolgentyp, ForeignKey ist nur ein externer Schlüssel Mit so einem winzigen Code ist Ihre After 5 garantiert

Als nächstes aktualisieren wir die Datenbank Das heißt, es ist einfach zu tun. Wie ich vorher erklärt habe

python manage.py makemigrations
python manage.py migrate

Es wird Ihnen gelingen, die DB allein damit neu zu schreiben Danach können Sie einen automatischen oder einen manuellen Test durchführen und vom Feld lassen Sehen wir uns die Animation in der Freizeit an. Ich empfehle Prepara

Erläuterung von Ansicht und Controller

HTML und Logik arbeiten, das war's Schreiben Sie, wenn Sie gefragt sind

Recommended Posts

MVC-Model Edition, um nur mit Voreingenommenheit von 0 zu lernen
Verfahren zum Erlernen und Ableiten eines Transformator-Englisch-Japanisch-Übersetzungsmodells mit CloudTPU
Ich habe versucht, SSD jetzt mit PyTorch zu implementieren (Modellversion)
Programmierung aus Büchern gelernt 7. Mai
Seq2Seq (2) ~ Achtung Model Edition ~ mit Chainer
Ich habe mir eine Möglichkeit ausgedacht, aus einem Foto ein 3D-Modell zu erstellen.
Ich habe versucht, den Winkel von Sin und Cos mit Chainer zu lernen
Verbessertes Lernen, um von null bis tief zu lernen
Python nur mit Hallo, Welten zu erinnern
Konvertieren Sie mit pdfplumber von PDF in CSV
Bedingter Zweig, um von Milk Boy zu lernen
Ein Memorandum, um WebDAV nur mit Nginx zu erstellen
Öffnen Sie AI Gym, um mit PD-gesteuertem Cart Pole zu lernen
Ich habe versucht, mit TF Learn die logische Operation zu lernen
Lernen Sie mit Caffe, handschriftliche Zahlen (MNIST) zu erkennen
[Einführung zur Minimierung] Datenanalyse mit SEIR-Modell ♬
AWS-Schrittfunktionen zum Lernen anhand eines Beispiels
Sichern Sie mit rsync von QNAP auf Linux
Von der Python-Umgebungskonstruktion zur virtuellen Umgebungskonstruktion mit Anaconda
Wie man Kaldi mit JUST Corpus trainiert
Wagen Sie es, mit Ruby zu lernen "Deep Learning from Grund von Grund auf neu" Importieren von Pickle-Dateien aus verbotenem PyCall
Ich habe mir eine Möglichkeit ausgedacht, aus einem Foto ein 3D-Modell zu erstellen. 0 Projektion in den 3D-Raum