임베디드 문서로 키 기반 캐시 만료와 같은 러시아 인형을 어떻게 설정합니까?Mongoid 임베디드 문서로 키 기반 캐시 만료
37 signals에 의해 설명 된 바와 같이 나는 touch
이 Mongoid 3.0 belongs_to
추가되었다 생각하지만 당신은 포함 된 문서를 함께 어떻게 다룰 것인가?
예 클래스 :
class House
embeds_many :persons
end
class Person
embedded_in :house
end
보기 :
<% cache ['v1', house] do %>
<%= house.some_attribute %>
<% house.persons.each |person| %>
<% cache ['v1' person] do %>
<%= render 'houses/person', person: person %>
<% end %>
<% end %>
<% end %>
것은 무엇 감동을 일반화하는 가장 간단한 방법이 될 것이다? 그래서 내가 사람을 업데이트 할 때, 그 사람이 끼워 넣은 집에 손이 닿게됩니다.
편집 : 여기에 포함 된 모든 항목을 다시 렌더링하는 것이 상대적으로 저렴할까요? 물론이 작업을 수행 할 수 있습니다.
class Person
after_save :touch_house
def touch_house
house.touch
end
end
감사합니다. 유일한 문제는> 3 개의 임베디드 문서의 깊이에 다소 지저분해진다는 것입니다. – Yeggeps