Django-logicalDelete

Een basismodel dat enige extra's biedt voor uw modellen
Download nu

Django-logicalDelete Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • MIT/X Consortium Lic...
  • Prijs:
  • FREE
  • Naam uitgever:
  • Patrick Altman
  • Uitgever website:
  • http://paltman.com

Django-logicalDelete Tags


Django-logicalDelete Beschrijving

Een basismodel dat enige extra's voor uw modellen biedt Ontwikkelaar COMMENTSDJANGO-LogicalDelete is een kleine en eenvoudige app die ik samen gooide om wat opnieuw te gebruiken van iets dat ik in bijna elk project en elk model dat ik maak. Het is te gemakkelijk voor goede gegevens om te worden verwijderd en het is onherstelbaar. Het is ook te gemakkelijk om dit te repareren door de methode van het verwijderen () van het model te overschrijven en gewoon records te markeren als verwijderd en vervolgens de managers van Django te gebruiken om het standaardgedrag te negeren, zodat logisch verwijderde items niet worden geretourneerd in querysets. Er zijn echter twee uitzonderingen nuttig voor deze regel. 1. In de beheerder zie ik graag alles met een indicator of het al dan niet is verwijderd, met de mogelijkheid om tot alleen actieve records te filteren, (of voor die kwestie). 2. Ik denk nog steeds dat het een geldig verzoek is waarin een item wordt opgehaald door zijn primaire sleutelwaarde, dat het object moet terugkeren, zelfs als het is gemarkeerd als verwijderd. Gebruik Django-logicaldeletusing De app is vrij eenvoudig: 1. Zet het LogicalDelete-submap in uw Python-pad. 2. erfen van logicaDelete.models.model voor alle modellen die u in deze functionaliteit wilt delen. 3. Maak en / of registreer admins voor elk van deze modellen met LogicalDelete.Admin.modelAdminADDITIONAllogical Welknes worden afgehandeld op datum Stamping van een kolomdatum. Daarnaast worden een kolommen van de datum gevuld als een gemak. Possible Extensionsyou kan deze twee klassen eenvoudig onderworpen zijn om generieke en nuttige functionaliteit te bieden aan uw modellen.UUID primaire keyi die typisch gebruik maakt van UUID-velden voor mijn primaire sleutels omdat ze me scherpen Mijn tafels Als en wanneer ik moet, bieden ze bovendien een versperringde ID aan mijn gegevens (mensen kunnen niet bepalen hoeveel van een bepaald object ik in mijn database heb, als ik niet wil dat ze het weten, maar eenvoudig Op zoek naar een geheel getal-ID in de URL). Aanbootgever Veelgevaarde tijden vind ik het nuttig om een geheel getal te hebben op mijn modellen die en expliciet gecontroleerde sequentiebepaling mogelijk maken. Ik implementeer dit normaal gesproken als een sorteer aflopende implementatie waarbij de gegevens worden gesorteerd van hoog naar lage per sequentiewaarde.in om dit te implementeren, zou je zowel het model als de modeladmin onderliggen, waar het model een voor de hand liggende eenvoudige toevoeging van een integerfield zou zijn , de Modeladmin, zou opgeheven Get_Query_Set, om iets te doen als: Klasse sequencedmodel (logicaldelete.models.model): Sequence = Models.integerfield () Klasse MylogicalDeletedManager (LogicalDelete.models.logicalDeletedManager): Def Get_Query_Set (Self): Als Self.model : QS = Super (MylogicalDeletedManager, Zelf) .get_query_Set (). Filter (DATE_REMEMED__ISNULL = TRUE) IF SEQUEKENDMODEL IN INSPECT.GETMRO (Self.MODEL): QS = QS.SORD_BY ('- Sequence') Return QS-vereisten: · Python · Django


Django-logicalDelete Gerelateerde software