【发布时间】:2015-07-26 03:30:46
【问题描述】:
我有一个 MainPagesController 索引页面,它从 QuotesController 呈现具有表单的“新”页面。如何呈现带有表单错误的 MainPagesController 索引页面?
主页/索引
<h1>Welcome to Book Quotes</h1>
<p>
Post your favourite quotes from your favourite books
<%= render 'quotes/new' %>
</p>
<%= render 'quotes/all_quotes' %>
引用/新
<h1>Add a quote</h1>
<%= render 'quotes/form' %>
引号/_form
<%= form_for @quote do |f| %>
<% if @quote.errors.any? %>
<ul>
<% @quote.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
<% end %>
<p>
<%= f.label :passage %><br>
<%= f.text_field :passage %>
</p>
<p>
<%= f.label :book_title %><br>
<%= f.text_field :book_title %>
</p>
<p>
<%= f.label :book_author %><br>
<%= f.text_field :book_author %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
QuotesController
def create
@quote = Quote.new(quote_params)
if @quote.save
redirect_to root_url
else
render #not sure what goes here
end
end
【问题讨论】:
-
尝试给
render :new看看它是否有效。 -
render :new 渲染了带有表单错误的引号控制器新视图,但不会让我在表单所在的同一页面中。我想留在 MainPagesController 索引视图中,但显示带有错误的表单
标签: ruby-on-rails ruby forms render