Eh, belirli modellerde değişiklikler takip etmek için bir sürüm tablo oluşturmak için bazı eklentileri gördüm, ama cant Quora'daki gibi kolayca yapmak ne var bugüne kadar bir tablodurDüzeltmeler denetimde nasıl çalışır? Veritabanı tasarımı
gösterir böyle:
- id
- item_type: especifies ne model revizyon anlamına gelir: "Konu"
- olayı ITEM_ID: imiş: "Düzenlenen, kaldırıldı döndürüldü eklendi"
- kim: olayı tetikleyen kim
- kolon: "Konu" hangi sütun değer değişti. "Konu PHOTO_URL."
- yeni: yeni değer: "http://s3.amazonaws.../pic.png"
- eski eski değeri: "" http://s3.amazonaws.../oldpic.png "
- revision_rel: geçmiş revizyon
- damgası işaret
Birisi bana bu tasarımla ilgili yardım ve yönergeler verebilir mi? performans, yanlış sütunlar, eksik sütunlar endişe Im, vb
id | item_type | item_id | event | who | column | new | old | revision_rel | date
________________________________________________________________________________________________________
1 | Topic | 2 | edit | Luccas | photo | pic.png | oldpic.png | null | m:d:y
2 | Topic | 2 | revert | Chris | photo | oldpic.png | pic.png | 1 | m:d:y
Muhtemelen artık buna ihtiyacım yok ... ancak tüm olayları (yarat, düzenle, yok et) kaydederseniz eski ve yeni değeri saklamanız gerekmeyebilir. Versiyon 2'nin eski değeri, sürüm 1'in yeni değeridir. Usecase'inize bağlıdır. –