django-logicaldelete.

ein Basismodell, das einige Extras für Ihre Modelle bereitstellt
Jetzt downloaden

django-logicaldelete. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • MIT/X Consortium Lic...
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Patrick Altman
  • Website des Verlags:
  • http://paltman.com

django-logicaldelete. Stichworte


django-logicaldelete. Beschreibung

Ein Basismodell, das einige Extras für Ihre Modelle bereitstellt Developer CommentsDJANGO-LogicalDelete ist eine kleine und einfache App, die ich zusammenwieht, um eine Wiederverwendung aus etwas herauszunehmen, das ich in fast jedem Projekt und jedes Modell, das ich erlese, wiederverstanden. Es ist zu einfach, dass gute Daten gelöscht werden, und es ist nicht inaktiviert. Es ist auch zu einfach, dies zu beheben, indem Sie die löschen () der Modell-Methode des Modells überschreiben und nur Datensätze als gelöscht haben, und dann nutzen Sie Django-Manager, um das Standardverhalten zu überschreiben, so dass logisch gelöschte Elemente nicht in Abfragesätze zurückgegeben werden. Es gibt jedoch zwei Ausnahmen, die ich jedoch habe für diese Regel nützlich gefunden. 1. In dem Administrator sehe ich gerne alles mit einem Indikator, ob es gelöscht wurde oder nicht, mit der Möglichkeit, auf nur aktive Datensätze zu filtern, (oder für diese Angelegenheit gelöscht). 2. Ich denke immer noch, dass es sich um eine gültige Anforderung handelt, wenn ein Artikel durch den primären Schlüsselwert abgerufen wird, dass das Objekt zurückgegeben wird, selbst wenn es als gelöscht markiert ist LogicalDelete-Unterordner in Ihrem Python-Pfad. 2. Erben Sie von logicaldelete.models.model für alle Modelle, die Sie an dieser Funktionalität freigeben möchten. 3. Erstellen und / oder registrieren Sie Administratoren für jedes dieser Modelle mit logicalDelete.admin.modeladminadditionallogical-Löschungen werden nach Datum abgewickelt, das eine DATE_REMOVE-Säule stempelt. Darüber hinaus wird ein Date_Created- und Date_Modified-Säulen als Convenience bevölkert.Possible ExtensionsSyou können diese beiden Klassen leicht unterklassifizieren, um Ihre Modelle generische und nützliche Funktionen bereitzustellen Meine Tabellen Wenn und wenn ich muss, geben sie außerdem eine verschlüsselte ID für meine Daten an (Personen können nicht bestimmen, wie viele ein bestimmtes Objekt, das ich in meiner Datenbank habe, wenn ich nicht möchte, dass sie es wissen, aber einfach Suchen Sie eine Ganzzahl-ID in der URL). Sequence FieldMany Times Ich finde es nützlich, ein ganzzahliges Feld auf meinen Modellen zu haben, die die Sequenzierung ermöglichen und explizit gesteuert werden. Normalerweise implemente ich dies als eine sortierende Image-Implementierung, bei der die Daten nach einem Ablaufwert von hoch bis niedrig sortiert werden, um dies zu implementieren, um dies zu implementieren, um das Modell und Modeladmin umzusetzen, wo das Modell eine offensichtliche einfache Ergänzung eines Integerfields wäre , das modeladmin, würde get_query_set überschreiben, um etwas zu tun wie: Klasse Sequenzmodell (logicaldelete.models.model): Sequence = MODELS.INDEGERFIELD () Klasse MylogicalDeletedManager (logicalDelete.models.logicalDeletedManager): def Get_Query_Set (Self): Wenn self.model : qs = super (MylogicalDeletedManager, self) .get_query_set (). Filter (datum_removed__isnull = true) Wenn sequenziertmodel in inspect.getMro (self.model): qs = qs.model): qs = qs.der_by ('- Sequenz') Rendite qs Anforderungen: · Python · Django


django-logicaldelete. Zugehörige Software