0

我有很多客户端,我希望能够在不同的场合循环(或显示一个)。我以为我很聪明,并且为单个客户使用了部分。

似乎部分没有被渲染。如果我只是在其中包含一些简单的“asd”或真正的交易,那么无论哪种方式,它都不会在我的页面上显示任何内容。

我很确定有客户在场。

我的代码有问题吗?:

我的客户/index.html.erb

<% @usersGroups.each do |group| %>
  <h1><%= group.name %></h1><br><br>
  <% if group.clients.length > 0 %>
    <% group.clients.each do |client| %>
      <% render partial: 'single_client', locals: {cl: client} %>
    <% end %>
  <% else %>
    Nog geen clienten in deze groep.
  <% end %>
<% end %>

和我的客户/_single_client.html.erb

xx<%= cl %> xx
<%= link_to(cl.name, edit_client_path(cl)) %>
<br>
<% if cl.avatar %>
    <img src="<%= cl.avatar %>" width="80">
<% end %>
<br>
<%= cl.birthdate.strftime("%d-%m-%Y")%>
<br>
<% if cl.background %>
<div style="border: 1px solid #000; width: 30px; height: 30px; background: <%= cl.background %>"></div>
<% end %>

<br><br>
<%= link_to(cl.group.name, group_path(cl.group)) if cl.group %><br>
<%= link_to 'Verwijder', cl, method: :delete, data: { confirm: "Weet u zeker dat u #{cl.name} wil verwijderen?" } %>

我也试过用render 'single_client',没用。

4

2 回答 2

2

代替

<% group.clients.each do |client| %>
  <% render partial: 'single_client', locals: {cl: client} %>
<% end %>

尝试

<%= render partial: 'single_client', collection: group.clients %>
于 2013-11-11T10:44:42.553 回答
1

代替:

<% render partial

和:

<%= render partial
于 2013-11-11T10:44:23.380 回答