【问题标题】:Rails image upload with carrier wave使用载波上传 Rails 图像
【发布时间】:2015-06-08 02:10:39
【问题描述】:
我成功地为用户模型创建了一个表单,我可以在其中上传带有载波的图像。这与提交按钮配合得很好。
一切都很好,但我想通过 jquery 文件上传或类似的东西来改进它。所以我的想象是我会点击 file_upload 按钮然后选择文件,然后它会预览图像的拇指。
我尝试关注 railcast #381,但是当我上传图片时,预览会在页面刷新后出现。使用js响应还是json更好? ajax图片上传有没有更好的方法?谢谢建议
【问题讨论】:
标签:
ruby-on-rails
image
upload
carrierwave
jquery-file-upload
【解决方案1】:
见附件:然后使用下面的代码。
点击“上传不同的文件”会触发隐藏文件上传器。
$('#page3-upload-bg-picture-link').click(function(){
$("#page3-upload-bg-picture").trigger("click");
});
那么如果你上传一个文件,它会调用change函数。
$("#page3-upload-bg-picture").change(function(){
page3BgImage(this);
});
然后page3BgImage 将被调用。在这里,从位置读取图像并显示在我的图像的“您上传的图像”div中。
function page3BgImage(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#page3-preview-bg-image').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}