2016-12-28 73 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

相關問題