0

Devise と ClientSideValidations gem を使用するアプリがあります。

以下のフォームでは、デバイスで動作するクライアント側の検証があります。実際にフォームを送信することは不可能になったので、機能していると思います。私の問題は、「空白にすることはできません」などのテキストがテキスト フィールド タグの横に表示されないことです。私が間違っていることは何か分かりますか?

%h3 Sign up
%br
= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :validate => true) do |f|
  %h4
    = devise_error_messages!
  %div
    = f.label :name
    = f.text_field :name, :validate => true
  %div
    = f.label :email
    = f.email_field :email, :validate => { :presence => :true }

  %div
    = f.label :password
    = f.password_field :password, :validate => { :presence => :true, :length => true }
  %div
    = f.label :password_confirmation
    = f.password_field :password_confirmation,  :validate => { :presence => true }
  %div
    = f.submit "Sign up", id: 'button'
= render "devise/shared/links"

ソースを表示すると、js が表示されます。

<script>//<![CDATA[
if(window.ClientSideValidations==undefined)window.ClientSideValidations={};if(window.ClientSideValidations.forms==undefined)window.ClientSideValidations.forms={};window.ClientSideValidations.forms['new_user'] = {"type":"ActionView::Helpers::FormBuilder","input_tag":"<div class=\"field_with_errors\"><span id=\"input_tag\" /></div>","label_tag":"<div class=\"field_with_errors\"><label id=\"label_tag\" /></div>","validators":{"user[name]":{"presence":[{"message":"can't be blank"}]},"user[email]":{"presence":[{"message":"can't be blank"}]},"user[password]":{"presence":[{"message":"can't be blank"}],"length":[{"messages":{"minimum":"is too short (minimum is 6 characters)","maximum":"is too long (maximum is 128 characters)"},"allow_blank":true,"minimum":6,"maximum":128}]}}};
//]]></script>

だから私はそれを知っていて、それがその仕事をしていると信じていますが、何らかの理由で、フィールドを空白のままにしたときに期待するエラーメッセージが表示されません.

4

0 に答える 0