2017-04-21 21 views
5

どこから始めるべきかわかりません...一日中解決しようとしています。 googleに関連するものはありません。私の以前の細かい、サイト全体は使用できません。再昇給時にリセット#cause防ぐために許可されていないパラメータをハッシュに変換できません - Ruby on Railsアプリのエラー

オーバーライド:私はに行くの任意のページには、私に示し

より良いエラーの宝石「ハッシュするために許可されていないパラメータを変換することができない」というエラーがスローされます。

 attr_reader :cause 
    def initialize(template) 
     super($!.message) 
     set_backtrace($!.backtrace) 
    @cause = $! 
    @template, @sub_templates = template, nil 
    end 

私は、以前の日にレール5にアップグレード他のRailsアプリケーションと全く同じ方法で、かつ全く問題がなかったしていた - それらはすべて同様多かれ少なかれ同じ宝石を使用します。私は何かを見逃しているかもしれないが、私はこれを引き起こしていることのほんのわずかな手がかりを見つけることさえできない。どんな助けも素晴らしいだろう!ありがとう!他に必要なことがあれば教えてください。

Gemfile:

source 'https://rubygems.org' 
ruby '2.4.1' 

gem 'rails', '>= 5.0.0.rc2', '< 5.1' 
gem 'bootstrap-sass', '~> 3.3', '>= 3.3.6' 
gem 'sass-rails', '~> 5.0', '>= 5.0.5' 
gem 'therubyracer', '~> 0.12.3' 
gem 'uglifier', '>= 1.3.0' 
gem 'coffee-rails' 
gem 'jquery-rails' 
gem 'jbuilder' 
gem 'sdoc', '0.4.0', group: :doc 
gem 'animate-rails' 
gem 'google-analytics-rails', '1.1.0' 
gem 'font-awesome-rails' 
gem 'high_voltage', '~> 3.0.0' 
gem 'sprockets-rails', require: 'sprockets/railtie' 
gem 'simple_form' 
gem 'pg', '~> 0.20.0' 
gem 'canonical-rails', github: 'jumph4x/canonical-rails' 
gem 'sitemap_generator' 
gem 'fog' 
gem 'listen', '~> 3.0' 
gem 'devise', '~> 4.2' 
gem 'paperclip' 
gem 'aws-sdk', '~> 2.3' 
gem 'wicked' 
gem 'reform' 
gem 'reform-rails' 
gem 'binding_of_caller' 
gem 'bootstrap-datepicker-rails' 
gem 'exception_notification' 
gem 'jquery-tablesorter' 
gem 'friendly_id', '~> 5.1.0' 
gem 'will_paginate', '~> 3.1.0' 
gem 'sidekiq' 
gem 'redis' 
gem 'twilio-ruby' 
gem 'phony_rails' 
gem 'social-share-button' 
gem 'chosen-rails' 
gem 'respond-js-rails' 

group :development, :test do 
    gem 'byebug' 
    gem 'better_errors' 
    gem 'letter_opener' 
    gem 'dotenv-rails' 
    gem 'rspec-rails' 
    gem 'factory_girl_rails' 
end 

group :development do 
    gem 'spring' 
    gem 'web-console' 
end 

group :test do 
    gem 'minitest-reporters', '1.0.5' 
    gem 'mini_backtrace',  '0.1.3' 
    gem 'guard-minitest',  '2.3.1' 
    gem 'faker' 
    gem 'capybara' 
    gem 'guard-rspec' 
    gem 'launchy' 
end 

group :production do 
    gem 'rails_12factor', '~> 0.0.3' 
    gem 'puma',   '~> 3.8.2' 
    gem 'heroku-deflater' 
end 

gem 'redactor-rails', github: 'glyph-fr/redactor-rails' 

エラーログの関連部分:

actionpack (5.1.0.rc2) lib/action_dispatch/middleware/executor.rb:12:in `call' 
actionpack (5.1.0.rc2) lib/action_dispatch/middleware/static.rb:125:in `call' 
() Users/luisaczc/.rvm/gems/[email protected]/gems/rack-  2.0.1/lib/rack/sendfile.rb:111:in `call' 
railties (5.1.0.rc2) lib/rails/engine.rb:522:in `call' 
puma (3.8.2) lib/puma/configuration.rb:224:in `call' 
puma (3.8.2) lib/puma/server.rb:600:in `handle_request' 
puma (3.8.2) lib/puma/server.rb:435:in `process_client' 
puma (3.8.2) lib/puma/server.rb:299:in `block in run' 
puma (3.8.2) lib/puma/thread_pool.rb:120:in `block in spawn_thread' 


ActionView::Template::Error - unable to convert unpermitted parameters to  hash: 
actionview (5.1.0.rc2) lib/action_view/template/error.rb:67:in `initialize' 
actionview (5.1.0.rc2) lib/action_view/template.rb:321:in `handle_render_error' 
actionview (5.1.0.rc2) lib/action_view/template.rb:160:in `rescue in render' 
actionview (5.1.0.rc2) lib/action_view/template.rb:155:in `render' 
actionview (5.1.0.rc2) lib/action_view/renderer/template_renderer.rb:64:in `render_with_layout' 
actionview (5.1.0.rc2) lib/action_view/renderer/template_renderer.rb:50:in `render_template' 
actionview (5.1.0.rc2) lib/action_view/renderer/template_renderer.rb:14:in `render' 
actionview (5.1.0.rc2) lib/action_view/renderer/renderer.rb:42:in `render_template' 
actionview (5.1.0.rc2) lib/action_view/renderer/renderer.rb:23:in `render' 
actionview (5.1.0.rc2) lib/action_view/rendering.rb:103:in `_render_template' 
actionpack (5.1.0.rc2) lib/action_controller/metal/streaming.rb:217:in `_render_template' 
actionview (5.1.0.rc2) lib/action_view/rendering.rb:83:in `render_to_body' 
actionpack (5.1.0.rc2) lib/action_controller/metal/rendering.rb:52:in `render_to_body' 
actionpack (5.1.0.rc2) lib/action_controller/metal/renderers.rb:141:in `render_to_body' 
actionpack (5.1.0.rc2) lib/abstract_controller/rendering.rb:24:in `render' 
actionpack (5.1.0.rc2) lib/action_controller/metal/rendering.rb:36:in `render' 
actionpack (5.1.0.rc2) lib/action_controller/metal/instrumentation.rb:44:in `block (2 levels) in render' 

ただ、繰り返しになるが - これは全体で起こって、特定のページではありません。通常、私はコントローラーなどに従って問題を解決することができますが、私はこれで完全に失われています。

答えて

1

多くの検索で、Railsを5.1にアップデートした後にエラーが発生したことがわかりました。 'canonical-rails' gemを使用して何らかの理由で<%= canonical_tag - %>という行を使用しているときに、このエラーが発生していました。理由を教えてもらえませんでしたが、うまくいけば、これは他の誰かを助けるでしょう。

16

paramsオブジェクトをハッシュに変換する必要がある場合は、レール5.1ではパラメータへのアクセスを許可する必要があるようです。

私の知る限り2つの解決策があります。通常は推奨されません(レールに強いパラメータを無効にする

form = Form.new(params[:form].permit!) 

2)あなたのconfig/application.rbにこれを追加します。

1)あなたのコントローラでは、これを行います):

+0

お返事ありがとうございます。私は間違いなく強力なパラメータを無効にしたくないと言っていました。私はそれ以来、問題を引き起こしていたものを見つけました。私の答えを見てください。 – DanRio

+1

私はフォームオブジェクトパターンを使用する傾向があるので、強力なパラメータは必要ありません – cmrichards

0

5.0(< 5.1)にダウングレードすると、例外ではなく廃止の警告が表示されるため、デバッグが容易になる場合があります。

関連する問題