テーブルにcount
列がありtags
ます。更新中にタグが投稿に追加されたばかりで、すでにdb内にある場合は、タグ数を増やしたいと思います。私はこれを私の投稿モデルに追加しました:
before_update :increment_tag
def increment_tag
db_post = Post.find_by_id(self)
self.tags.each do |tag|
unless db_post.tags.include? tag
tag.update_attribute("count", tag.count + 1)
end
end
end
dbから投稿を取得し、現在のタグがすでにdbにあるかどうかをテストします。ある場合は何も起こりません。ない場合は、カウントフィールドを更新する必要があります。しかし、何らかの理由でこれは機能しません。