Нет столбца flaggings_count с использованием make_flaggable с Rails 4

Я работаю над приложением Rails 4 и установил гем make_flaggable (следуя этому видеоруководству), чтобы пользователи могли лайкать сообщения. Всякий раз, когда я пытаюсь сделать так, чтобы пользователю понравилось сообщение (в браузере или консоли), он продолжает показывать мне эту ошибку:

SQLite3::SQLException: такого столбца нет: flaggings_count: UPDATE "posts" SET "flaggings_count" = COALESCE("flaggings_count", 0) + 1 WHERE "posts"."id" = 67

Вот мой метод:

def like
  @post = Post.find(params[:id])
  current_user.flag(@post, :like)
  redirect_to posts_path, :notice => "You now like this post"
end

Миграция выглядит нормально, случалось ли это кому-нибудь? Заранее спасибо!


person Mathieu James Baruch Robertfor    schedule 29.05.2014    source источник


Ответы (1)


Похоже, он использует counter_cache с flaggings_count.

Выполните миграцию и добавьте столбец flaggings_count в таблицу сообщений.

def change
  add_column :post, :flaggings_count, :integer
end
person emcanes    schedule 29.05.2014
comment
Спасибо! Пришлось сделать то же самое для таблицы пользователей - person Mathieu James Baruch Robertfor; 29.05.2014