моделирование базы данных для google app engine для многократного пересмотра сущности - PullRequest
4 голосов
/ 12 июня 2010

в моем приложении (вид клона вики) - статья часто меняется.

и мне нужно отслеживать все изменения, которые сделаны в этой статье.{ только текст.}

один грубый способ сделать это - добавить свойство datetime и создавать новую сущность каждый раз, когда что-то меняется.что слишком много тратит базу данных.{а также ненужные индексные отходы тоже.} а также необходимо заново создать отношения родитель-потомок и сущность.

У меня также есть журнал, который может показывать изменения - но я хочу кое-что упростить, чтобы переход с одной версии на другую мог быть проще.

идей?

спасибо.

1 Ответ

1 голос
/ 12 июня 2010

Вы можете отделить местоположение в вашей вики от контента и оттуда связать с версией страницы. Сохраняйте версии в связанном списке, если у вас двусторонняя навигация, круговая и т. Д., Двойная связь.

Родительский дочерний элемент, индексация и т. Д. Имеют дело только с местоположением и статьей, связанной с этим. Возврат к предыдущему изменению - это только изменение ссылки в местоположении (и отправка изменений на ваш индексирующий компьютер). Сокращение - это базовые операции со списком, то есть наведение следующего поля на версию ниже и удаление версии между ними.

...