私はそのような問題を抱えています:私はユーザーの電子メールをチェックしていますが、バリデーターに値が有効かどうかを伝えることができません。
私はそのような行動をとっています:
def checkemail
respond_to do |format|
format.jsonr do
if User.where(email: params[:email]).exists?
render :json => {
:status => :false,
}.to_json
else
render :json => {
:status => :true,
}.to_json
end
end
end
end
ここにjQueryがあります:
$(".sign_up").validate({
rules: {
"user[email]": {
remote: {
url: "http://127.0.0.1:3000/checkemail.jsonr",
type: "get",
data: {
email: function() { return $("#email").val(); }
}
}
}
})
コンソールからの結果は次のとおりです。
Processing by EditUserController#checkemail as JSONR
Parameters: {"user"=>{"email"=>"use@mail.com"}, "email"=>"use@mail.com"}
←[1m←[36mUser Exists (0.0ms)←[0m ←[1mSELECT 1 FROM "users" WHERE "users"."email" =
'use@mail.com' LIMIT 1←[0m
したがって、検証は合格していませんが、合格する必要があります。
また、ページ ステータス コードを渡そうとしましたが、失敗しました。
誰かが私のエラーの場所を提案できますか?