0

フォームからコントローラーにパラメーターを送信してから、モデルに送信する必要があります。モデルでチェックする必要があります。助けてください... フォーム:

<form action="questions">
<input type="text" name="user_name_param" /><br>
<input type="text" name="user_email_param" /><br>
<input type="submit" name="send" />
</form>

質問コントローラー:

user_id = User.new.check_user(params[:user_name_param], params[:user_email_param])

ユーザー モデル:

validates :name_param,  :presence => true, 
                :length => {:minimum => 1, :maximum => 254}

validates :email_param, :presence => true, 
                :length => {:minimum => 3, :maximum => 254},
                :uniqueness => true,
                :format => {:with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i}

 def check_user(name_param, email_param)
 if (name_param && email_param).valid?
 User.where(:user_name => name_param, :user_email => email_param).first.try(:id) || false
 else render :template => "questions/auth_form"
 end

終わり

未定義のメソッド「valid?」があります。nil:NilClassエラーの場合。

4

1 に答える 1