2016-12-28 69 views
0

我只是用 -只的ActionController :: UnknownFormat错误format.js

respond_to do |format| 
    format.js 
end 
在我创建行动

。不知道为什么,但我得到了UnknownFormat错误。如果我放入“format.html”和“format.js”,错误消失了。但是我想留在同一个页面上并打一个ajax电话。我经历了5页的谷歌搜索结果,为每一个可能的搜索,仍然没有为我工作。有人可以帮我从这里出去吗?

我的形式是这样的 -

<%= form_for [:home, Photo.new], remote: true, :html => {:id => "new-photo-form"} do |f| %> 

    <div id="upload-field"> 
     <%= f.file_field :image %> 
    </div> 

    <%= f.hidden_field :album_id, :value => album.id %> 

    <div id="photo-add-link"> 
     <%= link_to 'Add Selected Images', '#', remote: true, :onclick => "$('#new-photo-form').submit()" %> 
    </div> 

<% end %> 

服务器日志 -

Started POST "/home/photos" for 127.0.0.1 at 2016-12-28 08:23:38 +0530 
Processing by Home::PhotosController#create as HTML 
Parameters: {"utf8"=>"✓", "photo"=>{"image"=># <ActionDispatch::Http::UploadedFile:0x007fd5541a0578 @tempfile=# <Tempfile:/tmp/RackMultipart20161228-6069-175ahz0.jpg>, @original_filename="emilia-clark.jpg", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"photo[image]\"; filename=\"emilia-clark.jpg\"\r\nContent-Type: image/jpeg\r\n">, "album_id"=>"68"}} 
User Load (0.1ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 1]] 
Completed 406 Not Acceptable in 2ms (ActiveRecord: 0.1ms) 

ActionController::UnknownFormat (ActionController::UnknownFormat): 
app/controllers/home/photos_controller.rb:11:in `create' 


Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_source.erb (3.4ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (1.7ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (0.8ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/actionpack- 4.2.6/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (16.2ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/_markup.html.erb (0.3ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (0.2ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (0.4ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/style.css.erb within layouts/inlined_string (1.2ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/console.js.erb within layouts/javascript (16.2ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/main.js.erb within layouts/javascript (0.2ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console-2.3.0/lib/web_console/templates/error_page.js.erb within layouts/javascript (0.4ms) 
Rendered /home/santhosh/.rvm/gems/ruby-2.3.0/gems/web-console- 2.3.0/lib/web_console/templates/index.html.erb (29.5ms) 
+0

脚本在哪里? – Milind

+0

请发布适当的脚本/代码。 – Ronald

+0

这就是所有的代码 – beginner123456

回答

0

我注意到,您使用您的形式是,file_field。 JavaScript无法访问您的文件系统,因此您无法创建用于上传文件的ajax请求。有一些宝石来解决这个问题。检查this宝石。

+0

是的。也许这就是问题所在。有许多用于ajax文件上传的宝石。非常感谢。我会查找它。 – beginner123456

+0

非常感谢。你的猜测是对的。文件上传字段是它给我那个错误的原因。我在我的Gemfile中添加了“remotipart”gem,// =需要jquery.remotipart – beginner123456

相关问题