rails4 7.2 Rendering a Partial Form

跳转一个局部form

让我们同样地把那个新的comment部分移出来,形成自己的局部文件。再次创建一个文件 app/views/comments/_form.html.erb 包含下面代码

 

<%= form_for([@article, @article.comments.build]) do |f| %>

  <p>

    <%= f.label :commenter %><br>

    <%= f.text_field :commenter %>

  </p>

  <p>

    <%= f.label :body %><br>

    <%= f.text_area :body %>

  </p>

  <p>

    <%= f.submit %>

  </p>

<% end %>

然后你编辑文件 app/views/articles/show.html.erb 像下面的代码: 

<p>

  <strong>Title:</strong>

  <%= @article.title %>

</p>

 

<p>

  <strong>Text:</strong>

  <%= @article.text %>

</p>

 

<h2>Comments</h2>

<%= render @article.comments %>

 

<h2>Add a comment:</h2>

<%= render "comments/form" %>

 

<%= link_to 'Edit Article', edit_article_path(@article) %> |

<%= link_to 'Back to Articles', articles_path %>

这第二个跳转仅仅定义了我们想要跳转到的局部模板,comments/form。Rails是相当的智能化,能识别出在字符串中的斜杠,以及意识到你想要跳转到的在文件夹app/views/comments中的那个文件_form.html.erb。

在视图中,@article对象对于任何跳转的局部文件都是可使用的,因为我们定义过它了,把它类似于作为一个实例变量。

 

 

original text:http://guides.rubyonrails.org/getting_started.html#rendering-a-partial-form

你可能感兴趣的:(Ruby,Rails)