Reputation: 191
I try to edit comments in my blog with AJAX.
But i get error on my edit method on controller.
ActionController::UnknownFormat in CommentsController#edit
def edit
@post = Post.find(params[:post_id])
@comment = @post.author.comments.find(params[:id])
respond_to do |format|
format.js {render 'edit', status: :created, location: @post}
end
end
end
UPD
I added string:
...
respond_to do |format|
format.js {render 'edit', status: :created, location: @post}
format.html { redirect_to @post, notice: 'You voted' }
^^^this string
...
And and the error is gone. But javascript is not executing and the page just reloads
Upvotes: 0
Views: 50
Reputation: 129
Please check that you are submitting form as Js request.
in this case, I think Your form is submitting, but it's not sending as a JS request. so your edit action crashes looking for an HTML response.
What you need is to add remote: true to your edit link so that will render and execute the edit.js.erb file. Or if you are making ajax call then add dataType attribute with value 'script' .
For example:
$.ajax({
dataType: 'script',
method: 'GET',
data: { id: id, post_id: post_id },
url: URL_FOR_EDIT
});
Upvotes: 1