Я создаю веб-сайт управления контентом, который также будет включать другие функции.Когда член администратора удаляет элемент через панель администратора, я бы хотел, чтобы этот элемент был перемещен в «корзину» на 30 дней (затем автоматически удален).
Каков наилучший способреализуете эту функцию?
Одна идея, которая у меня возникла, заключалась в том, чтобы в моей таблице был битовый столбец «Удален», тогда показывались только записи WHERE Hide=0
.Однако это будет означать, что нужно помнить о необходимости устанавливать это условие каждый раз, когда я SELECT
из таблицы.
Еще одна идея, которая у меня была, заключалась в том, чтобы иметь вторую таблицу, куда записи будут перемещаться при удалении.Однако на моем веб-сайте используется много таблиц, поэтому это может означать удвоение количества таблиц и дублирование структур таблиц (что может вызвать проблемы согласованности в будущем).
В идеале я хотел бы иметьТаблица 'RecycleBin', в которую перемещаются все записи, но она может содержать 100 столбцов, чтобы иметь возможность хранить данные из всех разных таблиц.
Если у кого-то есть какие-либо другие идеи, это было бы очень полезно.
Спасибо.