我正在使用carrierwave上传图片,到现在为止一切正常。
我想要做的是在选择图像后显示要在表单上提交的文件的预览。
目前我的代码显示的是上一张图片。
<%= image_tag(@book.cover_url(:thumb)) if @book.cover_url %>
如何显示所选图像而不是已上传的图像?
答案 0 :(得分:1)
你没有。
这与Carrierwave无关,而是由于浏览器尚未将图像发送到服务器,因此Rails堆栈的任何部分都不会在这里发挥作用。
您需要的是一种访问<input type="file">
内图像并将其显示给用户的方法。
这可以通过使用属于HTML5的FileAPI来实现,但它仅在现代浏览器(Webkit / Gecko)中得到支持,并且API尚未完全完成,因此它是一种不断变化的目标。
我建议您查看像plupload这样的工具,将图片上传到服务器而不提交表单,然后通过JavaScript显示。
答案 1 :(得分:0)
尝试http://jasny.github.io/bootstrap/javascript/#fileinput
它有一个很好的解决方案,无需上传即可显示图像。