私はRails 3.1でコメントシステムを作ろうとしています。基本的なフォームをclient_side_validations gemで検証し、Ajaxを使用して動的に追加することです。私が宝石を追加する前に、すべてが機能していました(エラー処理は例外です)。 gemを追加した後、ページはフォーム送信時にリロードされます。 client_side_validationsの宝石は、これを引き起こしている可能性がありますエラーが表示されます - 私はどのように/理由はわかりません。私が手にJavascriptのエラーは次のとおりです。Ajaxフォームがclient_side_validations gemによって壊れていますか?
TypeError: 'undefined' is not an object (evaluating 'validators[this[0].name]')
マイフォームコード:
= simple_form_for([@post, @post.comments.build], :remote => true, :validate => true) do |f|
#comment-left
= f.input :name
= f.input :email
= f.input :website
#comment-right
= f.input :content, :as => :text
= f.button :submit
コントローラーコード:
def create
@post = Post.find(params[:post_id])
@comment = @post.comments.new(params[:comment])
respond_to do |format|
if @comment.save
format.html { redirect_to post_path(@post) }
format.js
else
format.html { redirect_to post_path(@post) }
format.js
end
end
end
Create.js.erbコード:
$('<%= escape_javascript render(:partial => @comment) %>').hide().insertBefore('#new_comment').slideDown();
最後に、部分コード:
.comment
= image_tag(comment.gravatar_url)
%span
Posted by
- unless comment.website.blank?
= link_to comment.name, comment.website
- else
= comment.name
on
= comment.created_at.strftime('%m.%d.%Y')
%p= comment.content
私はそれがすべて関連していると思います。モデルコードが必要な場合は、そのように言います。私はそれを提供します。しかし、カスタムバリデーターは使用されていません。なぜclient_side_validationsが機能していないのかについての洞察は非常に高く評価されます。ありがとう!
11月以降の進捗状況はありますか?私もこの問題を抱えているようです – Ivan
いいえ、あきらめました:( – Ian
http://stackoverflow.com/questions/6750174/client-side-validations-3-1-0-not-working-when-new-form-ドームに追加された – beck03076