Помещение rand (5) в процедуру default_url будет назначать случайное изображение каждый раз, когда создается новый объект модели.
Если вы хотите, чтобы изображения назначались случайным образом и чтобы каждый проект сохранял свое назначенное изображение, вы можете сделать это:
has_attached_file :something,
:default_url => lambda { |av| "/images/img_#{av.instance.default_image_number}.png" }
def default_image_number
id.to_s.last
end
Этот пример позволяет вам иметь 10 случайных изображений по умолчанию, которые остаются одинаковыми для каждой записи:
# img_0.png, img_1.png, etc.