我做了一个简单的网站,可以将照片附加到条目中。在照片中,您可以看到我尝试显示每个条目有多少张照片(蓝色)
0
但如果没有附加图像,我不希望 Rails 显示。这是我的代码:
<span id="anzahl"><%= treatment.paintings.count %></span>
我做了一个简单的网站,可以将照片附加到条目中。在照片中,您可以看到我尝试显示每个条目有多少张照片(蓝色)
0
但如果没有附加图像,我不希望 Rails 显示。这是我的代码:
<span id="anzahl"><%= treatment.paintings.count %></span>
您可以按照以下方式修改代码
<span id="anzahl">
<% treatment_paintings_count = treatment.paintings.count %>
<%= treatment_paintings_count unless treatment_paintings_count == 0 %>
</span>
首先,在模型中使用计数器缓存。您现在使用的方式不是一个好习惯,因为它会生成太多的 sql 查询。为了避免这种情况:
self.up
add_column :treatment, :paintings_count, :integer, :default => 0
Treatment.reset_column_information
Treatment.find_each do |u|
Treatment.reset_counters u.id, :paintings
end
end
belongs_to :treatment, counter_cache: true
<span id="anzahl"><%= treatment.paintings_count if treatment.paintings_count > 0 %></span>
您可以检查计数以确定它是否应该显示
<span id="anzahl">
<%= treatment.paintings.count if treatment.paintings.count > 0 %>
</span>
treatment.paintings.count.tap{|count| break (count unless count.zero?)}