Время от времени я нахожу web приложения, которые имеют какую-то историю или версию статьи, где вы можете выбрать предыдущую версию статьи/контента и в основном выполнить «восстановление». Я планирую иметь такое, но у меня есть кое-что в моем уме, и я хотел бы получить ваше мнение.Article Versioning/History
1) Если автосохранение добавляет новую запись в список истории? Я хотел бы реализовать функцию автосохранения, поэтому я задаюсь вопросом, нужно ли каждый автосообщение добавлять новую запись в список истории версий? Или должен ли я иметь отдельный «список» (= только последний автосохранение) для автосохраненных статей? Я думаю, что лестница имеет больше смысла. Если браузер выйдет из строя (или wtvr), пользователь сможет восстановить автосохранение. Список истории предназначен для тех статей, которые он сохранил, нажав кнопку отправки. Согласен?
2) Сколько версий? Если пользователь продолжает изменять статью (скажем, он продолжает добавлять новые абзацы), а затем сохраняет статью, сколько разных версий статьи должно быть в max? Должен ли я позволить пользователю решить (что было моей первоначальной мыслью)? Что обычно разумное значение? 10? Является ли управление версиями плохим, когда дело доходит до дискового хранилища? Если каждая статья имеет 10 версий, это в основном 10x больше места для всего содержимого статьи ... теперь Представьте, что у вас 1 Мб содержимого статьи, это будет 10 МБ для всей БД, а некоторые хосты имеют ограничения как размер БД. Это приводит к вопросу 3:
3) Вы когда-нибудь удаляли версии? Если версии статей остались неиспользованными достаточно долго, удалите их? Если да, то какая у вас продолжительность? Пользователь определен? Достаточно ли одной недели значение по умолчанию? Если время не является индикатором, то что? И если время является индикатором, то вы запускаете Crons для очистки или что?
4) Как определить «изменение»? Если пользователь добавляет одну точку в конец статьи и нажимает кнопку сохранения, я все еще создаю новую запись истории? Как вы справляетесь с этим? Вы просто сравниваете, изменилась ли статья, и если вы создали новую запись?
Это много вопросов, которые я знаю, но если у вас есть какие-то мнения или мысли, я рад их услышать. :)
Я создаю свое собственное веб-приложение, без подрывной деятельности, svn, rcs и т. Д. – Tower
Ваше веб-приложение по-прежнему может обращаться к командам, доступным в среде. – frankodwyer