SuperAPI AI 工具集

rails-engine-author

编程与开发

查看项目

更新于 10-15 22:17

技能介绍

用途:在需要创建、脚手架搭建或重构 Rails engine 时使用,强调可维护性优先于取巧,主张窄用途、清晰的宿主应用集成方式与精简的公开 API。本技能聚焦结构与设计,安装器细节、测试覆盖、发布流程和文档工作交由相邻技能。

主要能力:帮助判断抽象层级并说明选择理由。普通 gem 无需 Rails 钩子或应用目录;Railtie 需要 Rails 初始化钩子但不需要模型、控制器、路由、视图;Engine 需要自动加载路径、初始化器、迁移、资源、任务或宿主集成;可挂载 Engine 还需要自身路由、控制器、视图、资源和命名空间边界。提供默认约定,如全部命名空间化、对可挂载与面向公开的 engine 使用 isolate_namespace、集成显式化、初始化器幂等、迁移视为宿主拥有的操作并通过生成器复制。还给出推荐目录结构与宿主应用契约要点(宿主需添加什么、engine 暴露什么、支持哪些扩展点),并建议统一的配置入口。

使用方式:先识别 engine 类型,再定义宿主契约,创建最小结构,在命名空间内实现功能,规划最小集成覆盖,并清晰记录宿主契约。若用户未指定类型,则从所需行为推断并说明所选类型。示例中给出可挂载 engine 类使用 isolate_namespace 与命名空间路由的写法。

适用场景与限制:适合 Rails engine 的结构设计与重构;测试方面要求包含经 dummy 应用验证的集成测试。资料未提供具体收费、平台或价格信息。