2016-02-02 40 views
8

Gelişimdeki Rails 4.2'den Rails 5 beta1.1'e bir uygulamayı yükseltirim. App yükseltmeden önce iyi çalıştı. Temel yükseltme adımlarını (Ruby güncellemeyi, Rayları güncelleme ve ilgili adımları şu adresten geçirdim: http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html). Gemfile ayrıca son Mücevherlere güncellendi.Raylar 5 Yükseltme: Aşağıdaki gibi bir ara katman eklenmez: ActionDispatch :: ParamsParser (RuntimeError)

Ben $ çalıştırmak ara katman raylar veya $ konsolunu raylar veya $ aşağıdaki hatayı alıyorum sunucu raylar: Bu ActionDispatch :: ParamsParser (Raylar 5 beta katman kaldırıldı gerçeği ile ilgilidir

No such middleware to insert after: ActionDispatch::ParamsParser 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/actionpack/lib/action_dispatch/middleware/stack.rb:108:in `assert_index' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/actionpack/lib/action_dispatch/middleware/stack.rb:80:in `insert_after' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/configuration.rb:69:in `block in merge_into' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/configuration.rb:68:in `each' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/configuration.rb:68:in `merge_into' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/engine.rb:507:in `block in app' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/engine.rb:504:in `synchronize' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/engine.rb:504:in `app' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/application/finisher.rb:34:in `block in <module:Finisher>' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/initializable.rb:30:in `instance_exec' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/initializable.rb:30:in `run' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/initializable.rb:55:in `block in run_initializers' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/initializable.rb:54:in `run_initializers' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/application.rb:350:in `initialize!' 
.../config/environment.rb:5:in `<top (required)>' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/activesupport/lib/active_support/dependencies.rb:302:in `require' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/activesupport/lib/active_support/dependencies.rb:302:in `block in require' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/activesupport/lib/active_support/dependencies.rb:268:in `load_dependency' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/activesupport/lib/active_support/dependencies.rb:302:in `require' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/application.rb:326:in `require_environment!' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/application.rb:446:in `block in run_tasks_blocks' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/commands/rake_proxy.rb:13:in `block in run_rake_task' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/commands/rake_proxy.rb:10:in `run_rake_task' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/commands/commands_tasks.rb:51:in `run_command!' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/command.rb:20:in `run' 
.../.rvm/gems/ruby-2.3.0/bundler/gems/rails-dbf67b3a6f54/railties/lib/rails/commands.rb:19:in `<top (required)>' 
bin/rails:4:in `require' 
bin/rails:4:in `<main>' 

https://github.com/rails/rails/commit/38d2bf5fd1f3e014f2397898d371c339baa627b1). Ancak, bir şekilde benim app hala bunu arıyor gibi görünüyor.

Yapılandırma/application.rb dosyasında ActionDispatch :: ParamsParser ile silme gibi çeşitli şeyler denedim ve bu çalışmadığında, eklemeye de çalıştım. Aynı hata. Bu hatayı geçmenin herhangi bir yolu var mı?

cevap

9

Bu hatanın Rails 5 için henüz güncelleştirilmemiş bir mücevherden kaynaklandığına inanıyorum. Gem remotipart (https://github.com/JangoSteve/remotipart) kullanıyordum. Çok yardımcı oldu. Gem dosyasından kaldırdığımda, soruda belirtilen hata gider.

+0

Merhaba, daha sonra uzaktan kumandanı ne kullandınız? –

+2

Form girişlerinden javascript ile veri alıyorum ve formu göndermek için AJAX posta çağrısı yapıyordum. "Raylar yolu" olmayabilir, ancak uzak formları göndermek için esnek bir çözüm olduğunu düşünüyorum. – TH1J2

+1

Aynı hata ile tam olarak, bu PR (https://github.com/JangoSteve/remotipart/pull/154) henüz entegre olmadığından kısmi bir çözümle geldim: bunu gemfile 'gem 'remotipart' kısmına ekleyin, '~> 1.2', github: 'pedantix/remotipart', ref: '7f7989db572976816c03508c335bbc1d8230af78' – sequielo