我目前遇到了表单问题。
First argument in form cannot contain nil or be empty
在我的评论/ new中,这是_new.html.erb的部分内容。这是文件:
<% form_for @comment do |f| %>
<%= f.label :body %>
<%= f.text_field :body, placeholder: "Write Message here.." %>
<% end %>
我要做的是渲染为文章#显示页面添加评论。
我的代码:
评论控制器
class CommentsController < ApplicationController
before_action :find_comment, only: [:show, :edit, :update, :destroy]
def index
@comments = Comment.all
end
def new
@comment = Comment.new
end
def create
@comment = current_user.comments.build(comment_params)
if @comment.save
redirect_to :back
else
redirect_to '/'
end
end
def show
end
def edit
end
def update
if @comment.update(comment_params)
redirect_to '/'
else
redirect_to :back
end
end
def destroy
@comment.destroy
redirect_to "/"
end
private
def find_comment
@comment = Comment.find(params[:id])
end
def comment_params
params.require(:comment).permit(:body)
end
end
文章#显示
<%= render '/comments/new' %>
如果我需要额外的代码。请询问,我将使用其他文件编辑/更新问题。
感谢所有帮助/解释。先感谢您。
答案 0 :(得分:0)
第一个问题:
添加到文章#Show
def show
@comment = Comment.new
end