Jaki jest najlepszy sposób na utworzenie modelu typu „historia” w django?

Chciałbym stworzyć funkcję dla mojej aplikacji Django podobną do „Ostatnie akcje” administratora Django, aby przechowywać informacje o historii moich innych modeli.

Na przykład powiedzmy, że mam dwa modele o nazwie Książka i autor. Chcę mieć trzeci model, który przechowuje informacje, takie jak to, co zostało wykonane na danym obiekcie w modelu (dodaj, zmodyfikuj, usuń itp.) Przez kto i kiedy.

Kto, kiedy i akcja jest łatwa, nie jestem pewien, w jaki sposób przechowywać informacje dotyczące obiektu, na którym wykonano akcję.

Moim początkowym pomysłem było posiadanie modelu „Transakcje”, który przechowałby te informacje, a oba modele „Książka” i „Autor” mogłyby mieć do niego odniesienie „Klucz zagraniczny”. Jeśli jednak usuwam daną książkę lub autora, to jego historia transakcji jest również usuwana i nie mam zapisu, że ten obiekt został rzeczywiście usunięty.

Myślałem o innych możliwych rozwiązaniach, ale pomyślałem, że najpierw zapytam o bardziej doświadczone opinie. Jak mam podejść do tego problemu i jakie są rozsądne rozwiązania?

Dzięki!

questionAnswers(3)

yourAnswerToTheQuestion