原创作者: hideto
阅读:1008次
评论:0条
更新时间:2011-05-26
续上一节。
我们在页面中加上如下代码来限制public访问:
显然,只有admin才能新建Episode
我们来实现admin?方法
admin?在我们的页面中使用,它是一个helper方法,但是我们希望在controller里也可以使用:
好了,现在页面不会显示New Episode的链接了,但是我们通过url仍然可以访问new_episode_path
所以,我们还需要一个filter来做controller层的限制访问:
OK,下一式我们将实现admin?方法
我们在页面中加上如下代码来限制public访问:
<!-- episodes/index.rhtml --> <% if admin? %> <%= link_to 'New Episode', new_episode_path %> <% end %>
显然,只有admin才能新建Episode
我们来实现admin?方法
admin?在我们的页面中使用,它是一个helper方法,但是我们希望在controller里也可以使用:
# controllers/application.rb helper_method :admin? protected def admin? false end
好了,现在页面不会显示New Episode的链接了,但是我们通过url仍然可以访问new_episode_path
所以,我们还需要一个filter来做controller层的限制访问:
# controllers/application.rb protected def authorize unless admin? flash[:error] = "unauthorized access" redirec_to home_path false end end # episodes_controller.rb before_filter :authorize, :except => :index
OK,下一式我们将实现admin?方法
评论 共 0 条 请登录后发表评论