用户管理与微博模型开发指南
1. 用户管理功能完善
在用户管理方面,目前存在一个小的安全漏洞,即管理员可以直接发出 DELETE 请求来删除自己。虽然可以认为这样的管理员是自食其果,但最好还是避免这种情况发生。
为了限制只有管理员可以执行删除操作,应用代码使用了 before_filter 。以下是相关代码:
# app/controllers/users_controller.rb
class UsersController < ApplicationController
before_filter :signed_in_user, only: [:index, :edit, :update, :destroy]
before_filter :correct_user, only: [:edit, :update]
before_filter :admin_user, only: :destroy
private
def admin_user
redirect_to(root_path) unless current_user.admin?
end
end
此时,所有测试应该都能通过,用户资源(包括控制器、模型和视图)的功能已基本完成。可以使用以下命令运行测试:
$ bundle exec rspec spec/
在继续下一步之前,需要将所有更改合并到主分支:
1. 添加所有更改到暂存区:
超级会员免费看
订阅专栏 解锁全文
168万+

被折叠的 条评论
为什么被折叠?



