rails_admin是一个用来快速构建管理界面的RoR gem。对于普通的CRUD操作,rails_admin足够使用了,虽然不能够完全与Django的Admin界面媲美,但也是快速开发的一大利器。

但是你不想admin界面任何人都能访问吧。手头项目的权限处理用的是cancan,根据cancan官方文档所述加入代码。无权限的情况下,访问/admin,报No route matches controller home错。

被报错信息误导,查了很多资料,有说改这也有说改那的。其实bug解决起来很简单,加上main_app即可。记录在此,希望以后遇到这个问题的同仁不用浪费时间。

rescue_from CanCan::AccessDenied do |exception|
    redirect_to main_app.root_path, :alert => exception.message
end