我被困在这一段时间没有运气。基本上我试图创建一个"回复按钮"生成内联表单,用户可以填写以响应评论。当点击按钮时,我直接用javascript生成html(我知道这可能不是最好的做事方式,但我找不到更好的方法)。由于js似乎不允许我使用表单助手,因此我不确定如何使一切正常运行。
我很感激一些帮助,或者如果有人能够指出我采用更标准的方法来实现这一目标。
错误
param is missing or the value is empty: comment
HTML
<form action="/comments" class="new_comment" id="new_comment" method="post">
<textarea id="content" name = :comment[content] type = "text" cols= "40" rows = "5" /></textarea>
<input type="submit" value="Reply"> </form>
控制器
def create
@comment = Comment.new(comment_params)
@comment.save
redirect_to root_path
end
private
## Strong Parameters
def comment_params
params.require(:comment).permit(:content)
end
Schema.rb
create_table "comments", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "content"
end
请求
Request
Parameters:
{":comment"=>{"content"=>"hey"}}
答案 0 :(得分:0)
我意识到自己是个白痴,我能够只使用设计有助手的传统轨道表格,然后查看生成的html,以创建一个功能正常的表格。
以下是我更改为html的内容,以便我可以正常运行并提交所需的参数。
<form enctype="multipart/form-data" action="/comments" accept-charset="UTF-8" method="post">
<input name="utf8" type="hidden" value="✓" />
<textarea name="comment[content]" id="comment_content">
</textarea> <input type="submit" name="commit" value="Reply" />
</form>