Modul google.appengine.ext.bulkload.bulkload_deprecated
Übersicht
VERWORFENER Mixin-Handler für das Laden von Daten im Bulk in eine Anwendung.
Verwenden Sie stattdessen den neuen Bulkloader.
Inhalt
- Klasse google.appengine.ext.bulkload.bulkload_deprecated.BulkLoadQuelle
-
Bases: google.appengine.ext.webapp._webapp25.RequestHandler
Ein Handler für Bulkloading-Requests.
Diese Klasse enthält Handler für den Bulkloading-Prozess. Einen Handler für GET, um Cookie-Informationen für das Upload-Skript bereitzustellen, und einen für einen POST-Request zum Upload der Entitäten.
Der Body-Teil des POST-Requests enthält die Daten, die die Property-Werte der Entitäten darstellen. Ursprünglich war das Format eine Folge von Zeilen mit kommagetrennten Werten (verarbeitet von der Load-Methode). Das aktuelle (Version 1) Format ist ein Binärformat, das im Abschnitt "Tools und Bibliotheken" der Dokumentation beschrieben und von der LoadV1-Methode verarbeitet wird.
- InfoPage(uri)Quellcode
Rendert eine Informationsseite mit dem POST-Endpunkt und dem Cookie-Flag.
Parameteruri: Ein String mit der Request-URI
Gibt Folgendes zurück:Einen String mit dem Inhalt der anzuzeigenden Infoseite
- IterRows(reader)Quellcode
Gibt für jede Zeile der CSV-Daten ein Tupel mit einer Zeilennummer und einer Zeile aus.
Parameterreader: Ein CSV-Reader für die Eingabedaten.
- Load(kind, data)Quellcode
Parst CSV-Daten, verwendet einen Loader zum Konvertieren in Entitäten und speichert sie.
Schlägt bei einem Fehler schnell fehl. Gibt den HTTP-Antwortcode "Bad Request" zurück, die Ausgabe enthält das Traceback.
Parameter-
kind: Ein String mit dem Entitätstyp, der von diesem Loader verarbeitet wird
-
data: Ein String, der die zu ladenden CSV-Daten enthält
response code: Ganzzahliger HTTP-Antwortcode zur Rückgabe output: String mit dem HTTP-Antworttext
RückgabetypTupel (response code, output), wobei
-
- LoadEntities(iter, loader, key_format=None)Quellcode
Generiert Entitäten und lädt sie in den Datenspeicher. Liefert ein Tupel mit HTTP-Code und Stringantwort.
Parameter-
iter: Ein Iterator, der Paare aus Zeilennummer und Zeileninhalten liefert.
-
key_format: Ein Formatstring, mit dem eine Zeilennummer in eine Entitäten-ID umgewandelt wird. Wenn "None", werden die Entitäten-IDs automatisch generiert.
-
- get()Quelle
-
Verarbeitet einen GET-Request. Nur die Infoseite wird angezeigt.
- post()Quelle
-
Verarbeitet einen POST-Request. Liest CSV-Daten, wandelt sie in Entitäten um und speichert sie.
- Klasse google.appengine.ext.Bulkload.Bulkload_deprecation.Loader(kind, properties)Quelle
-
Basiert auf: object
Eine Basisklasse zum Erstellen von Datenspeicherentitäten aus Eingabedaten.
Schreiben Sie eine von dieser Klasse abgeleitete Klasse, die Loader.__init__ aus dem __init__ Ihrer Klasse aufruft, um einen Handler zum Bulkloading eines neuen Entitätstyps in Ihren Datenspeicher hinzuzufügen.
Wenn Sie zusätzlichen Code ausführen müssen, um Entitäten aus den Eingabedaten zu konvertieren, neue Properties zu erstellen oder die Entitäten anderweitig zu ändern, bevor sie eingefügt werden, überschreiben Sie HandleEntity.
Siehe die CreateEntity-Methode für die Erstellung von Entitäten aus den (geparsten) Eingabedaten.
- CreateEntity(values, key_name=None)Quellcode
Erstellt eine Entität aus einer Liste von Property-Werten.
Parameter-
values: Liste/Tupel von str
-
key_name: Falls angegeben, der Name für die (einzelne) resultierende Entität
Liste der datastore.Entity
Die zurückgegebenen Entitäten werden mit den Property-Werten aus dem Argument befüllt, mithilfe der im Konstruktor angegebenen Property-Zuordnung in native Typen konvertiert und über HandleEntity übergeben. Sie sind einfügebereit.
Löst Folgendes aus:AssertionError, wenn die Anzahl der Werte nicht mit der Anzahl der Properties in der Property-Zuordnung übereinstimmt.
-
- HandleEntity(entity)Quellcode
Abgeleitete Klassen können dies überschreiben, um benutzerdefinierten Code zur Konvertierung von Entitäten hinzuzufügen.
Wird vor dem Speichern für jede Entität aufgerufen, nachdem ihre Properties aus der CSV befüllt wurden. Abgeleitete Klassen können dies überschreiben, um benutzerdefinierten Code zur Behandlung von Entitäten hinzuzufügen.
Die einzufügende Entität sollte zurückgegeben werden. Wenn mehrere Entitäten eingefügt werden sollen, geben Sie eine Liste der Entitäten zurück. Wenn keine Entitäten eingefügt werden sollen, geben Sie "None" oder [] zurück.
Parameterentity – datastore.Entity
Gibt Folgendes zurück:datastore.Entity oder Liste von datastore.Entity
- statisch RegisteredLoaders()Quelle
-
Gibt eine Liste der erstellten Loader-Instanzen zurück.
- kind()Quellcode
-
Gib den Entitätstyp zurück, den dieser Loader ausführt.
- google.appengine.ext.bulkload.bulkload_deprecated.Validate(value, type)Quelle
Prüft, dass der Wert nicht leer und vom richtigen Typ ist.
Löst ValueError aus, wenn der Wert "None" oder leer ist bzw. TypeError, wenn es sich nicht um den angegebenen Typ handelt.
Parameter-
value: beliebiger Wert
-
type: Typ oder ein Tupel von Typen
-
- google.appengine.ext.bulkload.bulkload_deprecated.main(*loaders)Quellcode
Startet den Bulk-Upload.
Löst TypeError aus, wenn nicht mindestens eine Loader-Instanz angegeben wurde.
Parameterloaders: Eine oder mehrere Loader-Instanzen.