Ruby on rails Can';无法访问ActiveHash中的数据
我正在使用Gem active_散列为我不想为其创建DB表的简单数据创建模型 例如,我为FieldType设置了以下模型: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
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) }