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

amoeba

> 编程语言
开源

一个 Ruby 宝石,可允许复制 ActiveRecord 对象及其相关子对象,可通过模型上的 DSL 进行配置

822 stars0 点赞4 次浏览
访问官网GitHub

工具介绍

一个 Ruby 宝石,可允许复制 ActiveRecord 对象及其相关子对象,可通过模型上的 DSL 进行配置

阿米巴

易于克隆包含关联和在关联和属性下的多个操作的 active_record 对象。

有兴趣参与贡献吗?

请参阅 这里。

什么?

目标是能够轻松快速地重现 ActiveRecord 对象,包括其子对象,例如复制博客文章,同时保留其关联的标签或分类。 这个宝石被称为"Amoeba"(阿米巴),因为阿米巴(一种小型生物)擅长繁殖。它们的子孙也能快速、轻松地自我繁殖。

技术详情

这是一个 ActiveRecord 扩展 gem,可在复制活动记录模型时复制相关子记录对象。

  • 支持以下关联类型
  • has_many
  • has_one :through
  • has_many :through
  • has_and_belongs_to_many
  • 一个简单的 DSL 用于配置要复制的字段。该 DSL 可以应用于您的 Rails 模型或在运行时使用。
  • 支持 STI (单表继承) 子类继承其父类 amoeba 设置。
  • 支持多种配置风格,例如包含、排除和不加区分(即复制所有内容)。
  • 支持复制多对多记录的子类,或仅维护原始关联。
  • 支持自动深入分析,即递归复制子类和孙类记录。
  • 支持对字段进行预处理,以帮助指示唯一性并确保数据的完整性,具体取决于业务逻辑需求,例如前缀 "Copy of" 或类似文本。
  • 支持使用自定义 lambda 块对字段进行预处理,因此您可以基本上做任何您想做的事情,例如在创建副本时需要一些自定义逻辑。
  • Amoeba 可以对复制记录的字段执行以下预处理操作
  • set
  • prepend
  • append
  • nullify
  • customize
  • regex

使用方法

Issues· 41 开放

查看全部 Issues在 GitHub 打开

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

> 标签

Ruby

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

> 工具信息

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

> 相关工具

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