我有一个使用 ActiveAdmin 和嵌套资源的 Rails 4 应用程序。在我的本地开发版本上一切正常,但是当我部署到服务器(Ubuntu LTS 12.04)时,我遇到了问题。
我有一个 ActiveAdmin 配置,例如:
ActiveAdmin.register Order do
belongs_to :user
end
这导致admin_user_order_path
. 尝试访问订单页面(/admin/users/3/orders)时,我收到一条错误消息,提示路由无效,但它正在寻找admin_user_user_order_path
(注意附加user
)
我已经尽可能地追溯了这一点,并且我发现在herited_resources/class_methods.rb self.parents_symbols
的第150 行已经是[:user]
- 结果,在第167 行,它成为[:user, :user]
了问题的根源。
所以,作为一个非常临时的解决方案,我在服务器上的第 150 行手动添加了这个:
self.parents_symbols = []
如果我在本地尝试相同的事情(否则它可以工作),那么就会出现不同的错误。
我的脑子现在有点炸了。任何人都可以对此有所了解吗?