私にはArticle、User、Approvalという3つのモデルがあります。これは、これが3つのモデル多面体レールについて
class User < ApplicationRecord
has_many :approvals
has_many :articles, dependent: :destroy
end
class Article < ApplicationRecord
belongs_to :user
has_many :approvals, as: :approvable
end
class Approval < ApplicationRecord
belongs_to :user
belongs_to :approvable, polymorphic: true
end
今、私は記事のショーのページで承認画像を表示したい、とCURRENT_USERは、記事を承認した場合、それは応じdiffenrenceだある
def change
create_table :approvals do |t|
t.references :user, foreign_key: true
t.references :approvable, polymorphic: true
t.timestamps
end
end
承認テーブルであります、私はこれを行うには非常にイージーな方法があると思いますが、私は唯一のように、これを行う に愚かな方法を考え出すことができます。
<% @article.approvals.each do |approval| %>
<% if approval.user_id == current_user.id %>
# show has approvaled image
<% end %>
<% end %>
私は多分それを考えるinefficiエン、より良い解決策を教えてください、ありがとう! :)
おそらく、私は非常によく表現していない、私は承認が賞賛などの意味ですか?
'承認'モデルには 'article_id'属性がありません... – Dearest