0

この問題は、英語とjQuery、または他の何かを認識していることが原因です。私はjQueryのチュートリアルを使用していました-http ://blog.bernatfarrero.com/jquery-and-rails-3-mini-tutorial/

私のapplication.erb.htmlでは:

<%= javascript_include_tag :defaults, "rails.validations", "rails.validations.custom" %>
<%=  javascript_include_tag  "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"%>
<%=javascript_include_tag  "http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"%>

ページが表示されているため、ライブラリを含めなかったと思います。

しかし、私のページは次のようになります。

    0 Comments
    Say something!

編集済み

私のジェネレーターはjsファイルを作成しなかったので、ファイルrails.validations.custom.jsを作成し、GitHubからコードを追加しました。

   ClientSideValidations.validators.local['email'] = function(element, options) {
    // Your validator code goes in here
      if (!/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i.test(element.val())) {
    // When the value fails to pass validation you need to return the error message.
    // It can be derived from validator.message
    return options.message;
      }
    }
4

1 に答える 1

2

質問のコメントスレッドが長くなっているので、答えを作成します。

Firebugコンソールを確認することで、JavaScriptファイルの2つが、アプリケーションが期待する場所にないことがわかりました。

/assets/defaults.js
/assets/rails.validations.custom.js

これらの2つのファイルを/assetsディレクトリに移動するか、ファイルパスを変更して、これら2つのファイルが実際に存在する場所を指すようにする必要があります。

私はレールの男ではありませんが、これがあなたがそれをどのように行うかについての私の推測です:

<%= javascript_include_tag :defaults, "/js/rails.validations", "/js/rails.validations.custom" %>

これでディレクトリ内のファイルが検索されると思いますが、ファイル/assets/jsの実際の場所を指すようにパスを変更する必要があることは明らかです。レールの開発者がチャイムを鳴らして、スティックの端が間違っているかどうか教えてくれると確信しています。

于 2012-06-14T08:45:26.470 に答える