так что в этом коротком вопросе много вещей.
Первое, что я хотел бы сделать, - это создать хэш-таблицу
class CreateHashtags < ActiveRecord::Migration[5.0]
def change
create_table :hashtags do |t|
t.string :hashtag
t.references :hashtagsable, polymorphic: true
t.timestamps null: false
end
end
end
Эта строка критична t.references :hashtagsable, polymorphic: true
Это создаст 2 новых поля
:hashtagsable_type => :string, # This reference the model of the assiciation
:hashtagsable_id => :integer, # This reference the id of the assiciation
Эта новая модель должна выглядеть следующим образом:
# app/models/hashtag.rb
class Hashtag < ApplicationRecord
belongs_to :hashtagsable, polymorphic: true
end
Теперь вашей пользовательской модели вы должны добавить эту строку
class User < ApplicationRecord
has_many :hashtags, as: :hashtagsable # User.last.hashtags
end
class Account < ApplicationRecord
has_many :hashtags, as: :hashtagsable # Account.last.hashtags
end
в свойвид должен выглядеть так:
<% @user.account.hashtags.each do |hashtag| %>
<p><%= hashtags.hashtag %> </p>
<% end %>
Надеюсь, это поможет и поможет вам выбрать правильный путь