Rails simple_calendar呈现不需要的数据

时间:2016-12-22 05:16:57

标签: ruby-on-rails ruby ruby-on-rails-5

我在我的Rails 5.0应用程序中使用simple_calendar链接到事件,一切正常,除了我在日历中获得一些额外的数据,我想得到一些帮助来解决它。 这就是我在'views / eventos / calendario.html.erb'

中的内容
<h3>Eventos (<%= @eventos.count %>)</h3>
<%= month_calendar events: @eventos do |date, eventos| %>
  <%= date.day %>
  <% eventos.each do |evento| %>
    <div>
      <%= link_to evento.tipoEvento, evento %>
    </div>
  <% end %>
<% end %>

这就是每天通过编程事件呈现的内容:

<td class="day wday-5 past current-month has-events">

  9
    <div>
      <a href="/eventos/4">Entrenamiento</a>
    </div>
    [#&lt;Evento id: 4, fecha: "2016-12-09", tipoEvento:
    "Entrenamiento", equipo_id: 11, comment: "Cancha 2", 
    created_at: "2016-12-08 06:07:19", updated_at: "2016-12-08
    06:22:03", registrado: true&gt;]
</td>

对于没有事件的天数,它会呈现空[]。看,它正在渲染正确的标签,但我不知道如何避免它渲染对象数据,有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

解决方案是替换生成的视图中的一行:views / simple_calendar / _month_calendar.html.erb 从:

<%= block.call day, sorted_events.fetch(day, []) %>

为:

<% block.call day, sorted_events.fetch(day, []) %>

所以Jagdeep的答案是正确的,但代码不同。