私はイオン(角度の)アプリが消費するAPIを作るレールアプリを持っています。私のユーザーはサインアップする前に、サインアップする前に利用規約に同意し、私のコントローラーの私のパラメータにそれを設定してもらうようユーザーに依頼します。rails json - 受け入れの有効性を確認する
は、モデル側は次のようになります。
# agreeing to terms of service
validates_acceptance_of :terms_of_service, on: :create
コントローラは次のようになります。
def mobile_user_params
allowed = [:first_name, :last_name, :email, :password, :password_confirmation, :location, :terms_of_service]
params.require(:user).permit(allowed)
end
とのparamsでの最終的な結果は次のようになります。
{"user"=>{"terms_of_service"=>true}, "controller"=>"users", "action"=>"mobile_create", "format"=>"json"}
何私の問題は、それが受け入れるので、{"terms_of_service"=>true}
を返していても、これはあるエラーメッセージ:
errors: {"Terms of Service must be accepted"}
は、誰もが、私はこの検証を満たすことができる方法を知っていますか?チェックボックスを使用してHTMLをレンダリングするときに機能しますが、JSONリクエストではそれを満たすことができません。
助けを借りていただければ幸いです。