Ruby on rails Can';无法访问ActiveHash中的数据

Ruby on rails Can';无法访问ActiveHash中的数据,ruby-on-rails,Ruby On Rails,我正在使用Gem active_散列为我不想为其创建DB表的简单数据创建模型 例如,我为FieldType设置了以下模型: class FieldType < ActiveHash::Base self.data = [ {:id => 1, :name => "text", :friendly_name => "Text"}, {:id => 2, :name => "textarea", :friendly_ => "Te

我正在使用Gem active_散列为我不想为其创建DB表的简单数据创建模型

例如,我为FieldType设置了以下模型:

class FieldType < ActiveHash::Base
  self.data = [
      {:id => 1, :name => "text", :friendly_name => "Text"},
      {:id => 2, :name => "textarea", :friendly_ => "Text Area"},
      {:id => 3, :name => "image", :friendly_ => "Image"},
  ]
end
但我得到一个错误,顺序,收集或采摘没有定义

如何访问此数据?这在其他模型上也可以,只是在ActiveHash模型上不行。根据文档,该模型的工作原理应该与ActiveRecord相同,但我似乎无法访问相同的模型<代码>字段类型。所有都有效,但其他方法无效。

未在上定义Pull。它是在上定义的,其目的是为指定的列生成一个SQL select。您将无法使其与
ActiveHash
一起使用

但是,您可以在
字段类型
模型上定义自己的
采集

def self.pluck(*columns)
  data.map { |row| row.values_at(*columns) }
end
或直接查询数据:

FiledType.data.map { |row| row.values_at(:friendly_name, :name) }
弹拨没有在上定义。它是在上定义的,其目的是为指定的列生成一个SQL select。您将无法使其与
ActiveHash
一起使用

但是,您可以在
字段类型
模型上定义自己的
采集

def self.pluck(*columns)
  data.map { |row| row.values_at(*columns) }
end
或直接查询数据:

FiledType.data.map { |row| row.values_at(:friendly_name, :name) }