【发布时间】:2016-01-15 13:36:24
【问题描述】:
我的 form_for 没有重定向到我指定的操作。我实在想不出问题出在哪里。
我的观点详解:
<!-- Comments Form -->
<div class="well">
<h4>Comment:</h4>
<form class="comment-form">
<div class="form-group">
<%= form_for(:comments, :url => {:action => 'post_comment'}) do |f| %>
<%= f.text_area(:content, :rows => "3", :class => "form-control new-comment") %>
<%= f.hidden_field :book_id, :value => @comments[:book_id] %>
<%= f.hidden_field :user_id, :value => session[:user_id] %>
<%= submit_tag("Send") %>
<% end %>
</div>
</form>
</div>
我的控制器:
def detailedbook
@book = Book.find(params[:id])
@comments = Comments.new
@rating = Rates.new(:book_id => params[:id], :user_id => session[:user_id])
@previouscomments = Comments.where(:book_id => params[:id] )
end
def post_comment
@comments = Comments.new(params.require(:comments).permit(:content, :book_id, :user_id))
@comments.book_id = params[:id]
if @comments.save
redirect_to(:action => 'showbooks')
else
redirect_to(:action => 'home')
end
end
似乎提交甚至没有发生。我做错了什么?
【问题讨论】:
-
您可以发布表单提交的日志吗?
-
您能否在编辑中添加为您的表单呈现在页面上的 html?始终值得研究这一点,因为它是呈现的 html 决定了随表单提交的内容,而且通常不是您期望从您的 erb 文件中获得的内容。
-
我在哪里可以得到表单提交的日志?
-
我在查看页面源时发现了一个错误。谢谢你的想法,我不认为我在那里能看到任何东西:)
标签: ruby-on-rails forms