2016-05-08 2 views
0

При отправке простой многочастной формы сервер выходит из строя и отображает «Внутренняя ошибка сервера». я сократил форму к минимальному:Передача многостраничной формы приводит к ошибке внутреннего сервера в Rails 4.2

<%= form_for @media_object, :html => {:multipart => true} do |f| %> 
    <%= f.file_field :media_object_image %> 
    <%= f.submit "Create!" %> 
<% end %> 

Журнала трассировка:

 
ERROR ArgumentError: unexpected prefix: {"RackMultipart"=>nil, ""=>nil} 
    /Users/christer/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tmpdir.rb:111:in `make_tmpname' 
    /Users/christer/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tmpdir.rb:129:in `create' 
    /Users/christer/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tempfile.rb:132:in `initialize' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:22:in `new' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:22:in `block in create' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:135:in `get_current_head_and_filename_and_content_type_and_name_and_body' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:59:in `block in parse' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:56:in `loop' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart/parser.rb:56:in `parse' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/multipart.rb:25:in `parse_multipart' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/request.rb:375:in `parse_multipart' 
    /Users/christer/.rvm/gems/[email protected]/gems/rack-1.6.4/lib/rack/request.rb:207:in `POST' 

погуглить вокруг поворачивает вверх многокомпонентные проблемы представления с Rails 4.2 из-за максимальное количество открытых многотомных файлов, но это определенно отличается.

Я бегу Rails 4.2.6 с Ruby 2.3.

+0

Ваше сообщение об ошибке и трассировка стека очень похожи на сообщение, отправленное на imgur [номер вопроса 4] (https://github.com/dncrht/imgur/issues/4). Вы можете попробовать удалить imgur из своего Gemfile, если на нем есть ссылка. –

ответ

0

Хотя я не использую драгоценный камень imgur, Фил Росс поставил меня на правильный путь. Я действительно расширяю класс Array с помощью метода to_hash. Удаляя эти расширения, и вуаля!, Все работает так, как должно.

0

imgur не является одиноким. dropbox gem также known, чтобы вызвать это. Проверьте свой Gemfile.