Итак, хакерский способ решения этой проблемы (который может легко превратиться в скрепку для скрепки) состоит в том, чтобы изменить приведенный выше код, чтобы он был просто готов:
Person.all.collect(&:id)
или
Person.connection.select_values(Person.send(
:construct_finder_sql,
:select => 'id',
:conditions => { :deleted => false }
))
Первая опция просто заставляет Paperclip выполнять запрос через Rails, который в действительности проходит через BrowserCMS, таким образом, используя свои ограничения (то есть: не видит никаких удаленных записей).Второй вариант выполняет почти тот же запрос, но пропускает записи, удаленные BCMS.
Я считаю, что первый вариант лучше, так как он позволяет BCMS контролировать запрос, поэтому, если что-то изменится, ваш обезьянский патч выигралне ломается.