1
我正在努力向我正在构建的应用程序添加授权,并且我有一个问题。我已将一个:admin列添加到我的用户表并将其设置为布尔值。在我的控制器我加入这个代码:与我的例子相比,为什么使用授权库会更好?
class ShipsController < ApplicationController
def index
ships = Ship.all
@ships = ships.sort_by { |v| [v[:empire_image], v[:cost]] }
if current_user.admin == true
respond_to do |format|
format.html # index.html.erb
format.json { render json: @ships }
end
else
respond_to do |format|
format.html { redirect_to root_path }
end
end
end
它看起来像我将不得不把它添加到我的所有操作,这似乎是错误的。我的问题是,这样做是不安全的或只是更多的工作,但我很好。
另外我正在使用来自railstutorial.org的身份验证,并且想知道像cancan这样的库是否可以很好地工作。
感谢您的时间, 尼克
感谢Aldo,感谢回应。我最终用康康去了,而且工作起来非常容易。 – 2012-04-23 16:15:48
不客气!使用CanCan的一个很好的观点是文档,如果你发现问题,我建议你阅读它。顺便说一句,这个宝石看起来非常灵活,可能你在开始时不会使用所有这些功能,但稍后它可能会很方便。 – 2012-04-23 17:06:47