Загрузка изображения без формы или базы данных в PaperClip

0

Я новичок в Руби.

У меня есть DIV, в котором есть изображение по умолчанию.

Я хочу загрузить другое изображение при нажатии на это изображение или div. Я не хочу сохранять это изображение в базе данных. Кроме того, я не хочу использовать форму, как говорится в большинстве учебников по скрепкам (если есть способ сделать это без формы).

Теги:
rubygems
paperclip
gem

1 ответ

1
Лучший ответ

Вы хотите использовать данные-URL. вот пример того, как я его использовал:

<div>
   <%= f.file_field :image, :id => "image" %>
   <output id="image_preview_output">
   </output>
</div>
<script>
$(document).ready(function() {
    // Check for the various File API support.
    if (window.File && window.FileReader && window.FileList && window.Blob) {
    } else {
        alert('The File APIs are not fully supported in this browser.');
    }
});
$('#image').change(function previewImage(evnt) {
    var file = evnt.target.files[0];
    // Only process image files.
    if (!project_featured_image.type.match('image.*')) {
        var reader = new FileReader();
        reader.onload = (function(theFile) {
            return function(e) {
                var span = document.createElement('span');
                span.innerHTML = ['<img id="image_preview" src="', e.target.result, '" title="', escape(theFile.name), '"/>'].join('');
                $('#image_preview_output').html(span);
            };
        })(file);
        // Read in the image file as a data URL.
        reader.readAsDataURL(file);
    }
});
</script>
  • 0
    URL-адреса данных хранятся локально, а не в базе данных. В конце концов, если вам нужна база данных и вам не нужен поиск формы S3_Direct_Uploads. Отличный инструмент для обхода обработки на стороне сервера для Rails.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню