Rails соединяет таблицу с record_type и recored_id как activestorage - PullRequest
0 голосов
/ 13 февраля 2019
create_table :posts do |t|
  t.string   :title
  t.string   :content
end

create_table :post2s do |t|
  t.string   :title
  t.string   :content
end

create_table :users do |t|
  t.string   :email
  t.string   :name
end

create_table :likes do |t|
  t.references :users
  t.string :record_type
  t.integer :record_id
end

введите описание изображения здесь

Я хочу сделать как объединенную таблицу, такую ​​как Activestorage с record_type и record_id

Может кто-нибудь знать это имя объединения или сайтакак создать этот стиль соединения?

1 Ответ

0 голосов
/ 13 февраля 2019

Похоже, вам нужна полиморфная ассоциация

Таким образом, у вас будет тип и идентификатор в вашей таблице лайков, как вы уже описали.Ваши модели для записей и post2s идентифицируют себя как полиморфные.

Например, публикует модель: has_many :likes, as: :likeable и любит модель: belongs_to :likeable, polymorphic: true

Но прочитайте руководство.

...