【发布时间】:2011-11-12 16:57:08
【问题描述】:
我是 Rails 的新手,我正在关注下面的帖子,将 valum 的 ajax 上传器与回形针结合起来。上传器似乎可以工作,因为图像发布到数据库和回形针创建的“系统”目录。但上传者每次都会返回“失败”消息。该错误是从 fileuploader.js 生成的,但我不知道为什么。除了 fileuploader.js,我使用的是从下面的博客文章中复制的代码。我确定我应该提供更多信息以获得有效的答案,所以请让我知道我能提供什么。
谢谢
$(function() {
function createUploader(){
var uploader = new qq.FileUploader({
element: $('#file-uploader')[0],
action: '/photos',
multiple: false,
allowedExtensions: ['jpg', 'jpeg', 'png']
});
}
createUploader(); });
我还应该提到我正在使用 firebug,并且我的“get”和“post”功能似乎工作正常,没有错误。
这是来自控制器的代码,但我认为错误消息不是来自这里,因为该消息不包含“失败”
def create
@photo = Photo.new(params[:photo])
if @photo.save
flash[:notice] = "Successfully created photo."
redirect_to photo_path(@photo)
else
flash[:error] = "Post Error"
redirect_to new_photo_path
end
end
这里也是视图代码:
<%= content_for :head do %>
<%= javascript_include_tag "fileuploader" %>
<%= javascript_include_tag "picture_drag_drop" %>
<%= stylesheet_link_tag "fileuploader" %>
<% end %>
<h1>Photos#new</h1>
<p>Find me in app/views/photos/new.html.erb</p>
<%= form_for @photo, :html =>{:multipart=>true} do |f| %>
<%= f.label :title %>
<%= f.file_field :title %>
</div>
<div class="actions">
<%= f.submit "Submit" %>
</div>
<% end %>
<div id="file-uploader">
<p>Please enable JavaScript to use file uploader.</p>
</div>
【问题讨论】:
-
您可以提供您的控制器的特定代码(我猜是创建操作)和您的视图(_form ?),
-
很抱歉打扰,我想通了。我只需要将视图中的错误消息更改为:“render :text => '{"success": true}', :content_type => "application/json" 但我认为必须发布所有强制查看的代码稍微困难一点,这可能有所帮助。我希望没有人浪费太多时间来阅读这篇文章!我很抱歉。
-
您可以自己写一个答案并接受它。有人可能有类似的问题,你的问题和你的解决方案会帮助他。这就是 StackOverflow 的工作原理。欢迎! :-)
标签: ruby-on-rails ajax file-upload