Railesチュートリアルを学んでいます。
11章で、一番下のような記述のコードを見たのですが、この中で
User.find_by(email: params[:email])
なぜ上では、find_byメソッドのあとのカッコ内は(シンボル 値)となっているにもかかわらず、
(上は右のようにもかけますが、User.find_by(:email=> 'example@sample.com')
user.update_attribute(:activated, true)
では、update_attributeメソッドのあとのカッコ内は、(シンボル , 値)になっているのでしょうか?
ひとつひとつのメソッドで、それぞれ書式を記憶するしかないのか、
あるいは、なにか考え方があるのでしょうか?
よろしくお願いいたします。
Ruby
1class AccountActivationsController < ApplicationController 2 3 def edit 4 user = User.find_by(email: params[:email]) 5 if user && !user.activated? && user.authenticated?(:activation, params[:id]) 6 user.update_attribute(:activated, true) 7 user.update_attribute(:activated_at, Time.zone.now) 8 log_in user 9 flash[:success] = "Account activated!" 10 redirect_to user 11 else 12 flash[:danger] = "Invalid activation link" 13 redirect_to root_url 14 end 15 end 16end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/12 03:03
2018/06/12 03:11
2018/06/12 04:06
2018/06/12 04:15
2018/06/12 04:20