エントリに写真を添付できるシンプルな Web サイトを作成しました。写真では、各エントリが何枚の写真を持っているかを表示しようとしたことがわかります (青色)
0
しかし、画像が添付されていない場合はRailsを表示したくありません。これが私のコードです:
<span id="anzahl"><%= treatment.paintings.count %></span>
エントリに写真を添付できるシンプルな Web サイトを作成しました。写真では、各エントリが何枚の写真を持っているかを表示しようとしたことがわかります (青色)
0
しかし、画像が添付されていない場合はRailsを表示したくありません。これが私のコードです:
<span id="anzahl"><%= treatment.paintings.count %></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>
treatment.paintings.count.tap{|count| break (count unless count.zero?)}