So verwenden Sie Bulk_create in Django?

So verwenden Sie Bulk_create in Django?

Django Framework kann verwendet werden, um eine Webanwendung mit einer Datenbank zu erstellen, indem ein Skript in ein Skript geschrieben wird Modelle.py Und Ansichten.py Dateien der Django -App. Die Daten können mithilfe von Django Administration Dashboard oder durch Schreiben eines Skripts in die Datenbanktabellen eingefügt werden Ansichten.py Datei. Django Administration Dashboard benötigt eine Anmeldung für einen authentifizierten Benutzer, um auf die Tabellen der Datenbank zuzugreifen. Einzel- oder mehrere Datensätze können durch Schreiben eines Skripts in die Datenbanktabellen eingefügt werden. bulk_create () Die Methode ist eine der Möglichkeiten, mehrere Datensätze in die Datenbanktabelle einzufügen. Wie zum bulk_create () Die Methode wird verwendet, um die Mehrfachdaten in einer Django -Datenbanktabelle einzufügen, wird in diesem Tutorial angezeigt.

Voraussetzungen:

Bevor Sie das Skript dieses Tutorials üben, müssen Sie die folgenden Aufgaben erledigen:

  1. Installieren Sie die Django Version 3+ auf Ubuntu 20+ (vorzugsweise)
  2. Erstellen Sie ein Django -Projekt
  3. Führen Sie den Django -Server aus, um zu überprüfen, ob der Server ordnungsgemäß funktioniert oder nicht

Richten Sie eine Django -App ein:

Führen Sie den folgenden Befehl aus, um eine Django -App mit dem Namen zu erstellen Bookapp.

$ python3 verwalten.PY StartApp Bookapp

Führen Sie den folgenden Befehl aus, um den Benutzer zu erstellen, um auf die Django -Datenbank zugreifen zu können. Wenn Sie bereits einen erstellt haben, müssen Sie den Befehl nicht ausführen.

$ python3 verwalten.Py erzeugt

Fügen Sie den App -Namen in die hinzu Installed_app Teil der Einstellungen.py Datei.

Installed_apps = [

"Bookapp"
]

Erstellen Sie einen Ordner mit dem Namen Vorlagen in der Bookapp Ordner und setzen Sie den Speicherort der App der App in der Vorlagen Teil der Einstellungen.py Datei.

Vorlagen = [

… .
'Dirs': ['/home/fahmida/django_pro/bookapp/templates'],
… .
,
]

Erstellen Sie ein Modell für die Datenbanktabelle:

Öffne das Modelle.py Datei aus der Bookapp Ordner und fügen Sie das folgende Skript hinzu, um die Struktur von zu definieren Bücher Tische. Buch Die Klasse wird definiert, um eine Tabelle mit dem Namen Books mit zu erstellen Titel, Autor, Preis, Und veröffentlicht_year Felder. Nach dem Skript, Titel Und Autor Felder werden speichern Charakterdaten und Preis und veröffentlicht_year Felder speichern die Ganzzahldaten. Hier das Titel Das Feld ist mit dem eindeutigen Attribut definiert. Das bedeutet, dass der Wert der Titel Das Feld akzeptiert keine doppelten Daten.

Modelle.py

# Modulmodul importieren
von django.DB -Importmodelle
# Definieren Sie die Buchklasse für die Büchertisch
Klassenbuch (Models.Modell):
Titel = Modelle.Charfield (max_length = 100, einzigartig = true)
Autor = Modelle.Charfield (max_length = 100)
Preis = Modelle.Integerfield ()
veröffentlicht_year = Modelle.Integerfield ()

Leiten Sie die Makemigrationen Befehl zum Erstellen einer neuen Migration basierend auf den von den Modellen vorgenommenen Änderungen.

$ python3 verwalten.PY Makemigrations Bookapp

Leiten Sie die Wandern Befehl zum Ausführen der SQL -Befehle und zum Erstellen aller Tabellen in der Datenbank, die in der definiert sind Modelle.py Datei.

$ python3 verwalten.py migrieren

Ändern Sie den Inhalt der Administrator.py Datei mit dem folgenden Inhalt. Hier wird die Buchklasse der Modelle mit dem registriert registrieren() Methode zur Anzeige der Anzeige Bücher Tabellen im Django Administration Dashboard.

Administrator.py

# Admin -Modul importieren
von django.Import Administrator beibringen
# Buchmodell importieren
aus .Modelle importieren Buch
# Registerbuchmodell
Administrator.Grundstück.Register (Buch)

Erstellen Sie eine Vorlagendatei mit dem Namen DisplayBookList.html in der Bookapp/ Vorlagen/ Ordner mit dem folgenden Skript. In diesem Skript werden alle Daten der Büchertabelle in tabellarischer Form angezeigt. Abgesehen davon wird für die Schleife im Skript verwendet, um die aus dem übergebenen Daten zu iterieren Ansichten.py Datei.

DisplayBookList.html



<br>Django Bulk_create () Tutorial<br>



Python -Buchliste







% für Buch in Object_List %



% endfor %
AUSWEISNameAutorVeröffentlichungsjahrPreis
Buch.Ausweis Buch.Titel Buch.AutorBuch.veröffentlicht_year$ Buch.Preis



Ändern Sie den Inhalt der Ansichten.py Datei mit dem folgenden Skript. Das Modell und die Vorlagennamen sind in der definiert Bulkinsert Klasse. get_queryset () Die Methode der Klasse ist im Skript definiert, um alle Datensätze der Büchertabelle zurückzugeben. Andererseits, Buch.Objekte.alle() Die Methode wird verwendet, um alle Datensätze der Büchertabelle zurückzugeben. existiert () Die Methode wird im Skript verwendet, um die zu überprüfen Bücher Tisch ist leer oder nicht. Wenn diese Methode zurückgibt FALSCH Dann werden fünf Datensätze mit der Büchertabelle eingefügt bulk_create () Methode.

Ansichten.py

von django.Verknüpfungen importieren Render
# ListView -Modul importieren
von django.Ansichten.Generisches Import -Listenansicht
# Buchmodell importieren
aus .Modelle importieren Buch
# Klasse für das Einfügen mehrerer Daten definieren
Klasse Bulkinsert (ListView):
# Modell definieren
Modell = Buch
# Vorlage definieren
template_name = 'displayBooklist.html '
# Alle vorhandenen Datensätze der Büchertabelle lesen
querySet = book.Objekte.alle()
# Überprüfen Sie, ob die Büchertabelle leer oder nicht ist
Wenn Queryset.existiert () == falsch:
# Fügen Sie jeweils 5 Datensätze in die Büchertabelle ein
Buch.Objekte.Bulk_create ([
Buch (Titel = 'Python Crashkurs, 2. Ausgabe', Autor = 'Eric Matthes', Preis = 15, veröffentlicht_year = 2019),
Buch (Titel = 'Automatisieren Sie das langweilige Zeug mit Python, 2. Ausgabe', Autor = 'Al Sweigart', Preis = 30,
veröffentlicht_year = 2019),
Buch (Titel = 'Lernen Python', Autor = 'Mark Lutz', Preis = 15, veröffentlicht_year = 2019),
Buch (Titel = 'Kopf First Python', Autor = 'Paul Barry', Preis = 45, veröffentlicht_year = 2016),
Buch (Titel = 'a Byte von Python', Autor = 'Swaroop C H', Price = 15, veröffentlicht_year = 2013),
]))
# Geben Sie alle Aufzeichnungen der Büchertabelle zurück
def get_queryset (self):
# Setzen Sie den Standardabfragesatz
Buch zurück geben.Objekte.alle()

Ändern Sie den Inhalt der URLs.py Datei mit dem folgenden Skript. Im Skript, der 'admin/' Der Pfad wird definiert, um das Dashboard der Django Administration zu öffnen, und der 'Bücher/' Pfad wird definiert, um das aufzurufen Bulkinsert.As_view () Methode, die fünf Datensätze in die Büchertabelle einfügt und die Datensätze in die Vorlagendatei zurückgibt.

URLs.py

# Admin -Modul importieren
von django.Import Administrator beibringen
# Pfad importieren und Modul einschließen
von django.URLS -Importweg
Aus den Bookapp -Importansichten
urlpatterns = [
# Definieren Sie den Pfad für den Administrator
Pfad ('Admin/', Administrator.Grundstück.URLs),
Pfad ('Bücher/', Ansichten.Bulkinsert.As_view ()),
]

Öffnen Sie das Django -Administrations -Dashboard, um zu überprüfen, ob die Daten ordnungsgemäß eingefügt werden oder nicht verwendet werden bulk_create () Funktion.

Die eingefügten Datensätze der Bücher Die Tabelle wird im Browser nach der Ausführung der folgenden URL angezeigt.

http: // localhost: 8000/books/

Abschluss:

Mehrere Datensätze können auf unterschiedliche Weise in die Django -Datenbanktabelle eingefügt werden bulk_create (). In diesem Tutorial wurde eine einfache Möglichkeit, mehrere Datensätze in der Datenbanktabelle mit dieser Methode einzufügen, um Django -Benutzern zu helfen, die Logik hinter dem Prozess zu verstehen.