我已将Rails版本从4.2.6更新为5.2.1。
当尝试访问admin / login url时出现错误
ActionView :: Template :: Error(参数数量错误(给定3个,预期为0..1)): 1:insert_tag active_admin_application.view_factory [“ page”]
我尚未覆盖应用程序中活动管理员视图的任何部分。
也不使用与分页有关的宝石。
我正在使用以下版本
const filterSo = response =>
response.filter (item =>
Object.keys (item)
.map (lowerFirst)
.some (key => filters[key] && filters[key] === item[key])
)
错误日志的完整跟踪是
ruby 2.3.4
gem 'rails', '5.2.1'
gem 'activeadmin', '~> 1.3.0'
gem 'rails_friendly_urls', '~> 1.0.0'
有人可以告诉我,我要去哪里错了。
答案 0 :(得分:0)
rails_friendly_urls
有not been updated since 2015,我很确定它已经过时了,您必须删除或替换它才能升级到Rails 5,但ActiveAdmin并不存在。
答案 1 :(得分:0)
我对此有解决方案,
错误是由于rails_friendly_urls宝石引起的。
在rails_friendly_urls宝石https://github.com/calonso/rails_friendly_urls/blob/master/lib/rails_friendly_urls.rb
中case RailsFriendlyUrls.rails_version
when '4.2'
require 'rails_friendly_urls/urls/rails4_2'
when '4.0', '4.1'
require 'rails_friendly_urls/urls/rails4_0'
when '3.2'
require 'rails_friendly_urls/route_sets/rails3'
else
raise NotImplementedError.new "Rails Friendly URLs gem doesn't support Rails #{Rails.version}"
end
上面的部分已经写好,自2015年以来未更新。
所以我们可以在本地拥有gem并将上面的文件更改为
case RailsFriendlyUrls.rails_version
when '4.2', '5.2'
require 'rails_friendly_urls/route_sets/rails4_2'
require 'rails_friendly_urls/urls/rails4_2'
else
raise NotImplementedError.new "Rails Friendly URLs gem doesn't support Rails #{Rails.version}"
end
这将在rails 5.2.1中支持