簡體   English   中英

Rails:關系表上的impressionist_count

[英]Rails: impressionist_count on a relationship table

我正在嘗試使用印象派瑰寶來跟蹤某個關系的訪問。 我的寫方法效果很好:

@document.publications.each do |publication|
  impressionist(publication)
end

我有一個has_many, :through關系(在這里簡化了,但是一切正常):

class Document
  has_many :components, :through => :publications
end

我剛遇到編寫查詢以基於組件獲得相關印象的問題。 我失敗的代碼目前看起來像這樣:

<% document.components.each do |component| %>
  <%= component.publications.where(:document_id => document.id).impressionist_count %>
<% end %>

我收到這樣的無方法錯誤:

undefined method 'impressionist_count' for #<ActiveRecord::Relation:blah

我知道我在錯誤地編寫失敗的代碼,但是我在努力尋找正確的編寫方法。

您需要在關聯中設置:counter_cache

觀看此視頻,視頻已明確說明http://railscasts.com/episodes/23-counter-cache-column

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM