我查看了其他一些帖子,但他们没有解决我的问题
以下是导致问题的.select代码
Category_item控制器
def show
@category_item = Category.friendly.find(params[:category_id]).category_items.friendly.find params[:id]
@key_values = CategoryItem.friendly.find(@category_item.id).select("catrgory_item_values.key, categroy_item_values.value")
end
这是模型
class CategoryItem < ActiveRecord::Base
belongs_to :category
has_many :category_item_values, dependent: :destroy
extend FriendlyId
friendly_id :name, use: :slugged
end
从他们说的其他类似问题继承ActiveRecord :: Base但我的类别项类已经从它继承。
我最终试图获取与散列中的类别项相关联的键和值。构建这个应用程序以更好地学习rails,这是我不知道如何解决的问题。
答案 0 :(得分:2)
当您致电#find
时,您会收到一个ActiveModel对象,该对象没有您期望的#select
方法。
尝试:
Hash[CategoryItemValue.where(category_item_id: @category_item.id).pluck(:key, :value)]