百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
A

active_hash

> 编程语言
开源

一个只读的 ActiveRecord 类型基类,允许您使用哈希、Yaml 文件或自定义文件作为数据源

1.4K stars0 点赞2 次浏览
访问官网GitHub

工具介绍

一个只读的 ActiveRecord 类型基类,允许您使用哈希、Yaml 文件或自定义文件作为数据源

ActiveHash 是一个简单的基类,允许您将 Ruby 哈希表用作类似 ActiveRecord 模型的只读数据源。ActiveHash 假定每个哈希表都有一个 :id 关键字,这通常是您在数据库中存储的内容。这使您可以无缝地将 ActiveHash 对象升级为完整的 ActiveRecord 对象,而无需更改应用程序中的任何代码或数据库中的任何外键。此外,它还允许您在 AR 对象中使用 #has_many 和 #belongs_to (通过 belongs_to_active_hash)。

ActiveHash 还可以用于创建不依赖数据库的简单测试类 - 非常适合用于测试依赖于简单 AR 行为但不想处理数据库或迁移的插件或宝石。ActiveHash 还附带了:

捆绑器: ruby gem 'active_hash' 其他: ruby gem install active_hash 要求: - v1.x: Ruby >= 1.9.3, Rails >= 2.2.2 - v2.x, v3.x: Ruby >= 2.4, Rails >= 5 - v4.x: Ruby >= 3.0, Rails >= 6.1 ruby gem 'active_hash', '~> 1.5.3' 为什么要创建 ActiveHash? 我们编写了 ActiveHash,以便可以使用简单的内存数据结构,这些数据结构与 Rails 表单相兼容,例如: ```ruby

in app/models/country.rb

class Country < ActiveHash::Base self.data = [ {:id => 1, :name => "US"}, {:id => 2, :name => "Canada"} ] end

in some view

<%= collection_select :person, :country_id, Country.all, :id, :name %> 在 ActiveHash 之前,我们做过以下事情:ruby

in app/models/person.rb

class Person < ActiveRecord::Base COUNTRIES = ["US", "Canada"] end

in some view

<%= collection_select :person, :country_id, Person::COUNTRIES, :to_s, :to_s %>

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言