django-fullhistory ist ein Django-app, die vollständige Geschichte für Django bietet.
So installieren Sie:
sudo setup.py install
* In fullhistory Middleware
MIDDLEWARE_CLASSES = (
& Nbsp; & nbsp; & nbsp; 'Django.middleware.common.CommonMiddleware',
& Nbsp; & nbsp; & nbsp; 'Django.contrib.sessions.middleware.SessionMiddleware',
& Nbsp; & nbsp; & nbsp; 'Django.contrib.auth.middleware.AuthenticationMiddleware',
& Nbsp; & nbsp; & nbsp; 'Django.middleware.doc.XViewMiddleware',
& Nbsp; & nbsp; & nbsp; 'Django.contrib.flatpages.middleware.FlatpageFallbackMiddleware',
& Nbsp; & nbsp; & nbsp; 'Fullhistory.fullhistory.FullHistoryMiddleware',
)
* In fullhistory zu installierten Anwendungen:
INSTALLED_APPS = (
& Nbsp; & nbsp; & nbsp; 'Fullhistory',
)
* In Ihrem models.py, wählen Sie die Modelle, die Sie zu fullhistory haben wollen:
von fullhistory import register_model
register_model (SKU)
register_model (Order)
register_model (OrderItem)
Hinweise
& Nbsp; * Rekorde für Modelle, die nicht abstrakte inheritence verwenden werden separat pro Tabelle gespeichert. Das hat mit der aktuellen Implementierung der Serialisierung in Django zu tun. Auch übergeordneten Tabellen sind in der Lage, die unabhängig von ihrem ererbten Kinder geändert.
& Nbsp; * Fullhistory für Non-abstrakten Modell inheritence etwas weniger performant, da sie die elterliche Feld folgt.
& Nbsp; * QuerySet Methoden delete () und update () nicht Signale auslösen und damit außerhalb des fullhistory
& Nbsp; * FullHistory Admin-Funktionalität wird in Django 1.0 beschränkt
Anforderungen :
- Python
- Django
Einschränkungen :
- viele zu viele Felder nicht automatisch Änderungen aufzeichnen. Anpassungen im Admin-Modell gemacht worden, um dies zu kompensieren. Jedoch können Änderungen außerhalb des Admin getan, die nicht eingestellt werden eine verzögerte Aufnahme aufweisen. (Django Ticket # 5390)
- Dateien werden nicht beibehalten, nur den Weg.
- (Django 1.0 nur) Die FullHistory Feld nicht wie mit Nicht-abstraktes Modell inheritence erwartet, primär für Objekte die haben eine andere vererbt ist FullHistory Feld (Django Ticket # 9546)
- FullHistory kürzt Mikrosekunden für DateTimeFields
- DateTimeFields als Strings deserialisiert
- Modell Proxies ist ineffizient, wahrscheinlich doppelten Historieneinträge zu erstellen. wird festgelegt.
Kommentare nicht gefunden