Wenn ich ein System implementieren würde, das mit dem StackOverflow-Fragenrevisionsverlauf identisch ist und Ruby on Rails Was müsste ich tun, um das zu erreichen? Ich bin dabei, eine Website zu erstellen, die wie ein Wiki funktioniert, in dem die von den Nutzern beigetragenen Inhalte von anderen Personen aktualisiert werden können. Ich muss in der Lage sein, den Verlauf dieser Änderungen zu verfolgen, aber ich weiß nicht, wie ich das umsetzen soll.
Lösung:
Kurz gesagt, besteht die Funktionsweise darin, eine zusätzliche Tabelle zu erstellen, um die Änderungen zu verfolgen. Jede Zeile in der Tabelle enthält einen "Schnappschuss" der Daten, wie sie vor der Änderung des Datensatzes vorlagen (oder nur die Daten, die sich geändert haben).
Es gibt eine Reihe von Ruby Gems, die den größten Teil der Arbeit bereits erledigt haben. Hier ist eine Liste von Edelsteine, die sich mit der Versions-/Revisionsgeschichte befassen . Es sieht so aus Papierspur ist derzeit der beliebteste Edelstein für diese Aufgabe. Ryan Bates hat einen RailsCast aufgezeichnet, der eine Überblick über die Verwendung von Paper Trail .