Django2.* + Mysql5.7-Entwicklungsumgebung Integrations-Tutorial-Diagramm

Django2.* + Mysql5.7-Entwicklungsumgebung Integrations-Tutorial-Diagramm

Umfeld:

MAC_OS 10.12

Python 3.6

MySQL 5.7.25

Django 2.2.3

Voraussetzung: Python, Django und MySQL wurden erfolgreich installiert und können separat ausgeführt werden

1. Datenbankkonfiguration in den Einstellungen

DATENBANKEN = {
  'Standard': {
    'ENGINE': 'django.db.backends.mysql',
    "USER": "Benutzername",
    "PASSWORD": "Ihr Passwort",
    "NAME": "Datenbankname"
  }
}

2. Ändern Sie den Standarddatenbanktreiber

1. Installieren Sie pymysql

pip3 install pymysql

2. Ersetzen Sie den Treiber

Suchen Sie das Hauptpaket des Projekts. Wenn das Projekt beispielsweise TEST heißt, suchen Sie die Datei __init__.py unter dem TEST-Paket.

Fügen Sie den folgenden Code hinzu:

importiere pymysqlpymysql.install_as_MySQLdb()

3. Problemlösung:

Frage 1: Problem mit der MySQL-Client-Version

"""
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 oder neuer ist erforderlich; Sie haben 0.9.3.
"""

Lösung: Folgen Sie dem Pfad in der Abbildung, um die entsprechenden Zeilen 35 und 36 zu finden und kommentieren Sie diese aus;

Frage 2: Problem bei der Zeichenfolgencodierung und -decodierung

"""
AttributeError: Das ‚str‘-Objekt hat kein Attribut ‚decode‘
"""

Lösung: Klicken Sie auf die Informationen zur Ausnahmeverfolgung, suchen Sie in operations.py nach Zeile 146 und ändern Sie „decode“ in „encode“:

Probelauf:

PS: Der Grund für die Änderung des Quellcodes ist wahrscheinlich das Kompatibilitätsproblem zwischen Django 2, Python 3 und PyMySQL. Darüber hinaus liegt der Grund für die Wahl von 2.* in der offiziellen Supportzeit.

Der Standarddatenbanktreiber für Django ist mysqlclient, aber beim Testen stellte sich heraus, dass er überhaupt nicht ausgeführt werden konnte und der Import verschiedener MySQL-Bibliotheken fehlschlug! .......

Zusammenfassen

Oben ist das vom Herausgeber vorgestellte illustrierte Tutorial zur Integration der Entwicklungsumgebung Django2.* + Mysql5.7. Ich hoffe, es wird allen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Zusammenfassung der Konfigurationsmethode für die Verbindung von Django mit MySQL (empfohlen)
  • Django verwendet die vorhandene Datentabellenmethode der Mysql-Datenbank
  • Django liest MySQL-Daten und zeigt sie auf dem Frontend an
  • Django startet nach der Neuinstallation von MySQL neu und meldet einen Fehler: So lösen Sie das Problem „Kein Modul mit dem Namen ‚MySQLdb‘“
  • Beispielcode für die Django+MySQL-Konfiguration und einfache Bedienung der Datenbank
  • So installieren Sie Python3 und Django unter Linux und konfigurieren MySQL als Standard-Django-Server
  • Stellen Sie eine Apache+Python+Django+MySQL-Umgebung auf einem Linux-System bereit.
  • Django1.7+Python 2.78+Pycharm-Konfiguration MySQL-Datenbank-Tutorial
  • Python Django stellt eine Verbindung zur MySQL-Datenbank her, um hinzuzufügen, zu löschen, zu ändern und abzufragen

<<:  Tiefgreifendes Verständnis des benutzerdefinierten Routing-Managements von React Native

>>:  Detaillierte Erläuterung der Verwendung des Linux-Befehls seq

Artikel empfehlen

Bei der anonymen Mysql-Anmeldung kann keine Datenbankproblemlösung erstellt werden

Häufig gestellte Fragen Der Zugriff für den Benut...

Grafisches Tutorial zur kostenlosen Installationsversion von MySQL 5.7.21 winx64

Konfigurationsmethode für die kostenlose Installa...

Codeanalyse von Benutzervariablen in MySQL-Abfrageanweisungen

Im vorherigen Artikel haben wir die MySQL-Optimie...

JavaScript implementiert die Kontrollkästchenauswahlfunktion

In diesem Artikelbeispiel wird der spezifische Ja...

So implementieren Sie die Fernzugriffskontrolle in Centos 7.4

1. SSH-Remoteverwaltung SSH ist ein sicheres Kana...

Reagieren Sie auf die Verarbeitung von Fehlergrenzkomponenten

Dies ist der Inhalt von React 16. Es ist nicht di...

Das WeChat-Applet implementiert einen Videoplayer, der einen Bullet-Screen sendet

In diesem Artikel wird der spezifische Code für d...

Codebeispiel für das Nutzungsszenario der Nginx-Domänenweiterleitung

Szenario 1: Aufgrund von Serverbeschränkungen ist...