предложения для рабочего процесса Rails для очистки вложений от оставленных черновиков? - PullRequest
0 голосов
/ 22 марта 2011

Я работаю над приложением Rails.Две мои модели - это заметки и вложения.Пользователь может создавать заметки и добавлять к ним вложения.Это стандартная штука, и у меня уже все работает нормально.

В настоящее время пользователь должен создать заметку, прежде чем он сможет добавлять в нее вложения.Я рассчитываю реализовать более упорядоченный рабочий процесс для пользователя, похожий на знакомый рабочий процесс электронной почты, где вы можете добавлять вложения в несохраненную электронную почту.Однако главное - я не хочу, чтобы пользователю даже приходилось сохранять черновик заметки перед добавлением вложения, и я хочу, чтобы эта несохраненная заметка была отменена, если пользователь уходит (я не хочучтобы иметь дополнительную сложность несохраненных / неопубликованных заметок).

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

Без такого хука первое решение, которое приходит на ум, - это скрипт ночной очистки, который запускается через cron и который находитвсе неприкрепленные вложения и удалите их (возможно, фильтрация по вложениям, которые были созданы более 24 часов назад).Это лучшее решение?

1 Ответ

0 голосов
/ 22 марта 2011

На самом деле не существует какого-либо триггера, позволяющего узнать, когда нужно их очистить, поскольку пользователь может просто покинуть сайт без «выхода из системы» или каких-либо других действий. Так что это оставляет вас с фоновой работой, не привязанной к действиям пользователя. В твоем случае я думаю, что ночной cron хорош и прост и хорошо подошел бы к этой ситуации.

...