LoginSignup
0
0

More than 5 years have passed since last update.

Rails3.2.13とClient Side Validations3.2.5でリモートバリデーションが動かない

Posted at

リモートバリデーションを、
利用したライブバリデーションを使っていましたが、

何故か、Rails3.2.13とClient Side Validations3.2.5に、
アップデートしたとたんにライブバリデーションが、
常にエラーを返すようになってしまいました、、

原因

クライアントバリデーションのリモートバリデーションは、
ajaxで、/validators/【対象項目】=【値】経由でバリデーションチェックを行っています。

そして、バリデーションチェックの成否として、httpステータスを代用して、
成功は200を、失敗は404を返すようになっています。

この/validators/【対象項目】=【値】が/validators/【対象項目】=【値】.jsonとなっていたため、
アクセス先が不正となり、宛先不明という本来の意味の404が返却され、
それがバリデーションチェックエラーの失敗の意味の404と誤認識してしまい、
結果、バリデーション失敗のエラーとなっていました。

修正内容

先述したリモートチェック先のURLを、以下のように修正
/validators/【対象項目】=【値】.json
➡ /validators/【対象項目】=【値】

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0