繁体   English   中英

ActionDispatch :: Request:Class的未定义方法`alias_method_chain'

[英]undefined method `alias_method_chain' for ActionDispatch::Request:Class

NoMethodError:ActionDispatch :: Request:Class的未定义方法“ alias_method_chain”

安装wiselinks gem后,我面临此问题。

Ruby版本:Ruby 2.4.0

Rails版本:Rails 5.1.3

耙子流产了!

NoMethodError:ActionDispatch :: Request:Class /home/wscube/.rvm/gems/ruby-2.4.0/gems/wiselinks-1.2.1/lib/wiselinks/request.rb:4:inincluded'的未定义方法alias_method_chain'/ home / wscube / .rvm / gems / ruby​​-2.4.0 / gems / wiselinks-1.2.1 / lib / wiselinks / rails.rb:9:in include'/home/wscube/.rvm/gems/ruby-2.4。 0 / gems / wiselinks-1.2.1 / lib / wiselinks / rails.rb:9:inblock in class:Engine'/home/wscube/.rvm/gems/ruby-2.4.0/gems/railties-5.1.3/ lib / rails / initializable.rb:30:在instance_exec中/home/wscube/.rvm/gems/ruby-2.4.0/gems/railties-5.1.3/lib/rails/initializable.rb:30:inrun'/ home / wscube / .rvm / gems / ruby​​-2.4.0 / gems / railties-5.1.3 / lib / rails / initializable.rb:59:在run_initializers的/home/wscube/.rvm/gems/ruby-中2.4.0 / gems / railties-5.1.3 / lib / rails / initializable.rb:58:inrun_initializers的/home/wscube/.rvm/gems/ruby-2.4.0/gems/railties-5.1.3/lib/ rails / application.rb:353:正在初始化! /home/wscube/Upstge/upstge-latest-version/config/environment.rb:5:in'/home/wscube/.rvm/gems/ruby-2.4.0/gems/activesupport-5.1.3/lib/active_support /dependencies.rb:292:in require'/home/wscube/.rvm/gems/ruby-2.4.0/gems/activesupport-5.1.3/lib/active_support/dependencies.rb:292:inblock in require'/ home /wscube/.rvm/gems/ruby-2.4.0/gems/activesupport-5.1.3/lib/active_support/dependencies.rb:258:在load_dependency中/home/wscube/.rvm/gems/ruby-2.4.0 /gems/activesupport-5.1.3/lib/active_support/dependencies.rb:292:inrequire'/home/wscube/.rvm/gems/ruby-2.4.0/gems/railties-5.1.3/lib/rails/application .rb:329:在require_environment中!” /home/wscube/.rvm/gems/ruby-2.4.0/gems/railties-5.1.3/lib/rails/application.rb:445:inblock in run_tasks_blocks'/home/wscube/.rvm/gems/ruby- 2.4.0 / gems / sprockets-rails-3.2.0 / lib / sprockets / rails / task.rb:62:在块中(2个级别)在定义'/home/wscube/.rvm/gems/ruby-2.4.0 @ global / gems / rake-12.0.0 / exe / rake:27:in'/home/wscube/.rvm/gems/ruby-2.4.0/bin/ruby_executable_hooks:15:in eval'/ home / wscube /。 rvm / gems / ruby​​-2.4.0 / bin / ruby​​_executable_hooks:15:in

Rails 5.1放弃了alias_method_chain ,转而使用Module#prepend Wiselinks自2014年以来未进行更新,并且与Rails 5不兼容。

您的选择受到限制:

  1. 使用较旧版本的Rails,以便可以使用Wiselinks。
  2. 使用Wiselinks以外的其他工具。
  3. 尝试让Wiselinks作者将其更新为更新版本的Rails。
  4. 前叉Wiselinks并对其进行更新,以便自己与最新的Rails一起使用。 有一个拉请求,但它已经闲置了近一个月。

我倾向于(2),除非您想分叉它并负责维护该分叉。 在Rails领域中四年未更新的某些东西可能已被放弃。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM