Я разбираю HTML-документ и пытаюсь заменить изображение src. Кажется, он делает то, что я хочу, когда я пытаюсь сделать это в консоли, однако в моей модели он, похоже, не сохраняет его. Теперь я не уверен, что я делаю неправильно со способом сохранения в Rails (я пытаюсь обновить поле содержимого и заменить внешние изображения локальными) или он использует nokogiri, но не сохраняет результат с использованием метода set_attribute
Все остальное он делает отлично.
before_save :replace_zemanta_images
def replace_zemanta_images
doc = Nokogiri::HTML(content)
unless doc.css('div.zemanta-img').blank?
doc.css('div.zemanta-img img').each do |img|
io = open(URI.parse(img[:src]))
if photos.find_by_data_remote_url(img[:src]).blank?
photo = photos.build(:data => io, :data_remote_url => img[:src])
img.set_attribute('src', photo.data.url(:original)) #doesn't work!
end
end
end
end