特定のアクションを実行する際に、ユーザーを管理者に制限しようとしています。以下では、ユーザーがサインインするとき (管理者ではない)、渡されたハッシュからのアクションにアクセスするべきではありません。これが機能するRSpecコードの一部ですが、渡されたハッシュについて質問があります。
{ "new" => "get",
"create" => "post",
"edit" => "get",
"update" => "put",
"destroy" => "delete" }.each do |action, method|
it "cannot access the #{action} action" do
sign_in(:user, user)
send(method, action.dup, :id => project.id)
response.should redirect_to(root_path)
flash[:alert].should eql("You must be an admin to do that.")
end
end
, のような記号を使用する代わりに、なぜ文字列 , , ... を使用するのか疑問に思ってい"new"
ます。後のメソッド呼び出しに関連するものですか??"create"
:new
:create
action.dup
send
ありがとう!