我正試圖根據新用戶選擇的類別,向新用戶顯示推薦用戶的功能。如何用Rails定義與當前用戶具有相同元素的用戶?
所以建議用戶應該是user_type:「star」,它與current_user所選的category.id相同。
這些是模型。
class User < ActiveRecord::Base
has_many :categorizings, as: :categorizable, dependent: :destroy
has_many :categories, through: :categorizings
end
class Categorizing < ActiveRecord::Base
belongs_to :category
belongs_to :categorizable, polymorphic: true
end
class Category < ActiveRecord::Base
has_many :categorizings, dependent: :destroy
has_many :users, through: :categorizings, source: :categorizable, source_type: 'User'
end
而且,這是我的僞編碼方法來發現我卡在推薦用戶...
CategoriesController < ApplicationController
def recommended_user
@recommended_user = User.where(user_type: 'star' && Who has same category.id with a current_user)
end
end
很抱歉的混亂的解釋,但任何幫助。 謝謝!
如果所有類別匹配,或任何在集合? – Vasfed
你的應用中有'current_user' helper嗎? – Ilya
是的,我的應用程序中有current_user helper。 – Ryuji