所以我試圖用AJAX更新我的評論部分,而沒有整個頁面刷新大學項目。不過,我似乎無法得到這個工作。 在它給我的控制檯ŠRuby on rails AJAX提交表單錯誤
無法加載資源:
:服務器500(內部服務器錯誤)的狀態<h1>Title: <%= @post.title %></h1> <h2>Body: <%= @post.body %></h2> <hr /> <h1>Your comments</h1> <%= link_to "View comments", "#", id: "comments-link" %> <ol id="comments"> <%= render 'comments' %> <hr /> <h1>Create comment</h1> <%= form_for(@comment, :html => {class: "form", role: "forms"}, :url => post_comments_path(@post), remote: true) do |comm| %> <div class="container"> <div class="input-group input-group-md"> <%= comm.label :body %> <%= comm.text_area :body, class: "form-control", placeholder: "Enter a comment" %> </div> <%= comm.submit "custom", id: "button" %> </div> <% end %> </ol>
我show.html.erb文件迴應
我comments.coffee:
$(document).on "page:change", ->
$('#comments-link').click ->
$('#comments').fadeToggle()
$('#comments_body').focus()
我create.js .erb:
$('#comments').append("<%= j render @comment %>");
和我的意見控制器:
class CommentsController < ApplicationController
def index
end
def new
end
def new
@comment = Comment.new
end
def create
@comment = Comment.new(comment_params)
@comment.post_id = params[:post_id]
if @comment.save
flash[:success] = "Successfully created comment"
respond_to do |format|
format.html { redirect_to post_path(@comment.post_id) }
format.js
end
else
flash[:danger] = "Failed to create comment"
redirect_to root_path
end
end
private
def comment_params
params.require(:comment).permit(:body)
end
end
我可能已經錯過了一些文件,所以才讓我知道,這是基本的,因爲它只是一個崗位和評論系統 - 無需爲造型該項目,所以是的。過去4個小時我一直在嘗試,其他地方都不行。我在這裏看過,Youtube - 無處不在,但是沒有其他人的代碼適合我,所以我來到了這裏!感謝您的幫助。
編輯:
我注意到它說創造的錯誤響應觀點,但是我做了這個觀點,並呈現評論的身體到create.html.erb但是我只需要現在顯示形式。
檢查控制檯是否有錯誤。請在這裏發佈您的錯誤。與500它必須提供一些更多的錯誤日誌.. –
我從字面上只是更新:) – StormViper
在這個遠程應該創建'create.js.erb'而不是'create.html.erb' –