django-vcexport.

Django-Modellinstanzen Exporteur
Jetzt downloaden

django-vcexport. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • GPL
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Ethan Jucovy

django-vcexport. Stichworte


django-vcexport. Beschreibung

Django Model Instanzen Exporteur django-vcexport ist eine flexible Bibliothek zum Exportieren von serialisierten Django-Modellinstanzen in ein automatisch gesteuertes Repository, das automatisch oder manuell in ein versionstest gesteuertes Repository exportiert wird Modellklasse mit automatischen Exporten auf Save.use die API der Anwendungsebene, um das Exportverhalten in Ansichten (zum Beispiel) zu definieren (zum Beispiel) und explizit ausdrücklich von Ihrem eigenen Kodex auszulösen orientiertes Muster. Die Kernverhaltensweisen werden in der Vcexport.models.exporter-Klasse definiert, die analog zu Modelladmin ist. Wie modelladmin und modelforform unterteilen Sie die Standardbasis, um das Verhalten auf pro-Modell-Basis anzupassen. 1. Registrieren Sie diese für die automatische Versionierung von Modellen mit Vcexport: Importieren von Vcexport Vcexport.Register (MYMODEL) Hier können Sie ein post_Save-Signal anschließen. 2. Sie können das Exportverhalten auf einer pro-Modell-Basis per-Modell-Basis anpassen, indem Sie Vcexport.models.exporter subclassing und Vcexport erzählen, um Ihr Modell mit dem benutzerdefinierten Exporteur zu registrieren: Klasse MyexPorter (vcexport.models.exporter): ... vcexport.register ( MYMODEL, EXPORTER = MYEXPORTER) 3. Standardmäßig werden Modelle in das XML-Format von Django serialisiert, da er mit Diff gut funktioniert und generisch ist. 4. Sie können die Serialisierung pro Modell anpassen, indem Sie einen benutzerdefinierten Vorlagenpfad als Klassenattribut übergeben: Klasse MyExPorter (Exporteur): repository_template = 'fleem / document_format.txt' Die Vorlage wird mit zwei Kontextvariablen gerendert. Objekt, das die mit gespeicherte Modellinstanz und ein Boolean erstellt wurde: {%, falls erstellt%} neues Objekt! {{% endif%} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.title}} {{object.titled_field.pk}} **** Farbe : {{object.color}} {{object.description}} {{object.description}} Hiermit können alternative Anwendungsfälle unterstützt werden: * Sie möchten einen Modell Großhandel * Sie haben ein Modell, das ein oder zwei dokumentartige Textfelder enthält, und Sie Möchten Sie nur diese Felder ausstellen - schreiben Sie einfach keine anderen Felder in der Serialisierungsvorlage aus. 5. Standardmäßig werden die Dokumentablagerungen Ihrer Modellinstanzen in Repository-Pfaden gespeichert, die wie / app_name / modelclassname / extining_pk aussehen. Sie können den Pfad anpassen: Klasse myexporter (Exporteur): def repository_path (self): return '/ my_custom / path_for / the_model /' + self.ojject.color Beachten Sie, dass, wenn Sie dies tun, möglicherweise mit mehreren Modellinstanzen enden Speichern Sie denselben Dateipfad im Repository. Dies ist eine Funktion. 6. Der standardmäßige Erfassungsbenutzer ist undefiniert. Derzeit können Sie dies nicht anpassen. Die Standardcommit-Nachricht ist uninteressant: "Object {{extinance.pk}} (von '{{{app_name}}. {{Model_name}}') Gespeichert von django-vcexport." Sie können die Commit-Nachricht mit einer Modellmethode anpassen, die einen Boolean erstellt hat, und gibt eine Zeichenfolge an: Klasse MyexPorter (Exporteur): def repository_commit_message (self, erstellt): Wenn erstellt: Return "User% s ist ein neuer% s"% s " (Self.Object.user.username, selb.Object.color) Return "User% s Committed% s"% (self.Object.user.username, self.object.color) Die Anwendungsebene apiyou kann auch den Inhalt exportieren Explizit, zum Beispiel in der Save () -Methode Ihres Modells, in Anbuscode usw. mit der Funktion Vcexport.export_to_Repository: def my_view (Anfrage): ... Objekt = mymodel.objects.get (...) objekt.morx = Request.Post object.Save () Importieren von vcexport vcexport.export_to_repository (Objekt) Die Standardvorlage, Commit-Nachricht usw. sind die gleichen wie mit der Modell-API. Sie können sie in Ihrem eigenen Code anpassen und an den Export_to_Repository weitergeben: def my_view (Anfrage): ... Objekt, erstellt = mymodel.objects.get_or_create (...) object.morx = Anfrage.Post Objekt .SAVE () Importieren von vcexport vcexport.export_to_repository (Objekt, erstellt = erstellt, repository_template = '/ fleem / morx.html', message = "Änderung des MORX", repository_path = '/ Fleem / Objekte /% s'% object.pk ) Die Funktion export_to_repository wird die Überarbeitung des Commits oder keine, wenn keine Änderungen an Commit.Configuration aufgetreten sind. Sie möchten Ihre Daten speichern inyou müssen Ihr Repository und Ihre Kasse zu Ihrem eigenen initialisieren. Um mit Subversion zu verwenden, müssen Sie pysvn installiert haben. Anforderungen: · Django · Python Was ist neu in dieser Version: · Braunbeutelfreigabe; Export_to_Repository-Funktion als öffentlicher API (vcexport.export_to_repository) gemacht.


django-vcexport. Zugehörige Software