У меня есть модель, используемая для создания корма активность под названием активность, которая имеет следующие столбцы:Лента активности с использованием полиморфного ассоциации не может получить: зависимый =>: уничтожить работу
t.integer "user_id"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "source_id", :null => false
t.integer "activity_type", :null => false
t.text "data", :null => false
Пытаюсь приложить каждое действие к различным типам объектов, которые должны отображаться в фиде (например, добавлены в избранное, новые подключения и т. д.). Следующие ассоциации существуют в настоящее время:
belongs_to :user
belongs_to :source, :polymorphic => true
Я пытаюсь использовать source_id
в качестве первичного ключа соединительного объекта (например, избранных) и activity_type
как перечисление (например, избранных => 1, приглашение => 2) с использованием жемчужина simple_enum.
ВОПРОС: Я не могу получить :dependent => :destroy
для работы с моделью «Избранное». Это напоминает мне в исключении, что у меня нет внешнего ключа favorite_id, чтобы он мог чисто удалить Activity после удаления избранного. Как я могу справиться с этим?
ActiveRecord::StatementInvalid (PGError: ERROR: column activities.favorite_id does not exist'
Да, это правильно. Я должен был посмотреть на Rails Guides для этого - там очень просто. Благодаря! – adarsh