1

我对 Rails 4 非常陌生,并试图了解如何从 index.html.erb 部分渲染某些字段。我彻底糊涂了。我一直在关注 Agile 4 的 Depot 应用程序,但正在修改注册应用程序。

在商店中,我有一个名为 _listing.html.erb 的部分,它是registrations 视图中registrations/index.html.erb 的副本,如下所示:

<h1>Listing</h1>
    <div id="reglist">
    <ul>
      <li>Name</li>
      <li>Age</li>
      <li>Group</li>
    </ul>
    <% @registrations.each do |r| %>
    <ul>
      <li><%= r.full_name %></li>
      <li><%= r.age %></li>
      <li><%= r.group %></li>           
    </ul>                   
    <% end %>

.

registrations_controller.rb 有:

def listing 
   @registrations = Registration.all
end

在上面的 def 列表中,如果我使用 @registrations = Registration.find(params[:id]) 我得到一个错误:未定义的方法 `each' for nil:NilClass。

store/index.html.erb 有:

    <%= render "registrations/listing"  %>

如果此部分包含纯文本,它会显示,但我不知道如何从注册表中获取名字和姓氏、年龄和组的动态显示,以显示在新页面上并可用于打印姓名标签。

如果这不是寻求帮助的正确方式,我深表歉意,我目前不确定如何做这样的事情,非常感谢帮助或指导初学者教程。我在谷歌上呆了几天,所以试图理解但没有运气。

4

0 回答 0