どうしたの?
「likes_count」列を投稿に追加するプロジェクトで移行を作成しました。
def self.up
add_column :posts, :likes_count, :integer, :default => 0
Post.all().each do |post|
post.update_attribute(:likes_count, post.likes.count)
post.save
end
end
def self.down
remove_column :posts, :likes_count
end
うまくいったようですが、モデルに「counter_cache」を追加しようとすると問題が発生します。見て:
has_many :likes, :counter_cache => true, :as => :important
はい、「:counter_cache => true」なしで移行を実行します。この移行後にのみ、このコマンドを追加しました。奇妙なことに、私が次のようなことをすると
has_many :likes, :as => :important, #:counter_cache => true
私のローカルホストは再び機能します。(「申し訳ありませんが、問題が発生しました。」というエラーのみが表示されます)。
誰かが何が起こっているか知っていますか?