touch: true не срабатывает при удалении объекта
У меня есть две модели - Post и Comment. Я использую кеширование фрагментов для кэширования каждого post
вот так:
- @posts.each do |post|
- cache post do
= render 'posts/post', post: post
post.rb
class Post < ActiveRecord::Base
belongs_to :user, touch: true
has_many :comments, dependent: :destroy
end
Теперь мой comments.rb
Файл выглядит следующим образом:
class Comment < ActiveRecord::Base
belongs_to :user
belongs_to :post, touch: true
end
Это работает как ожидалось. Всякий раз, когда я добавляю новый комментарий к сообщению, срок действия ключа кэша этого конкретного сообщения истекает. Однако, когда я удаляю комментарий из поста, ключ кеша этого поста не истекает. Что дает?