Rails 4 Error: NoMethodError - undefined method `itemfavorites'

Rails 4 Error: NoMethodError - undefined method `itemfavorites'

嘿,当我从 ItemsController:

访问 @interestedusers = User.itemfavorites.where(item_id: @item.id) 时遇到问题
NoMethodError in ItemsController#show
undefined method `itemfavorites' for #<Class:0xfb94bb8>

路线

resources :items do
    get :itemfavorites, on: :member
end

用户模型

# Favorite items of user
has_many :favorite_items # just the 'relationships'
has_many :itemfavorites, through: :favorite_item, source: :item # the actual items the user favorites

物品型号

# Favorited by users
has_many :favorite_items # just the 'relationships'
has_many :itemsfavorited_by, through: :favorite_items, source: :user # the actual users favoriting an item

总联有效,我测试了可以add/remove和显示收藏

我正在尝试显示用户收藏的项目。

预先感谢您的每一个回答!如果您需要更多信息,请告诉我。

您是在用户 class 上调用 itemfavorites,而不是用户实例。我猜你想做类似

的事情
@interestedusers = current_user.itemfavorites.where(item_id: @item.id)

@interestedusers = @user.itemfavorites.where(item_id: @item.id)

编辑:你想这样做来为一个项目获取用户:

@interestedusers = @item.itemsfavorited_by