Можно ли отменить «загрузку удалённых изображений на локальный диск»?

Возможно ли отменить опцию «Загружать удалённые изображения локально»?

Я отключил её, но у меня много постов, в которые я добавил ссылку на новость, и удалённое изображение было загружено на мой форум, как и ожидалось. Однако, возможно, это не лучшая стратегия в долгосрочной перспективе. Большинство новостей мы забываем уже на следующий день, так зачем хранить изображения долгое время?..

В любом случае, я отключил эту функцию, затем выполнил rake posts:rebake, надеясь, что изображения onebox вернутся к исходной ссылке. Но ничего не вышло. Изображения onebox по-прежнему используют загруженное изображение с форума вместо исходной ссылки.

Есть ли способ заставить форум «забыть» ранее загруженные изображения? Я думал, что ребейк заставит onebox использовать исходное изображение.

Не так-то просто… URL-адреса изображений заменяются на маркдаун-разметку для локального изображения. Вам нужно будет откатиться к версии до того, как URL был заменён на изображение, и через некоторое время Discourse удалит изображения, на которые больше нет ссылок в постах.

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

Вы можете найти их с помощью

PostRevision.where("modifications like '%downloaded local copies of images%'")

Написание кода для отката всех таких постов оставляем в качестве упражнения для читателя. :slight_smile:

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

Если читатель вообще захочет предпринять такую попытку! :grinning_face_with_smiling_eyes:

Спасибо, мистер Джей!