SuperAPI AI 工具集

rails-presenter

数据与分析

查看项目

更新于 10-16 05:05

技能介绍

用途:在 Rails 项目中以 TDD 方式创建 presenter,把视图相关的格式化逻辑从模型里抽离出来,让模型保持精简。

主要能力:presenter 继承 BasePresenter(BasePresenter < SimpleDelegator),通过 SimpleDelegator 委托模型方法;可包含 ActionView 的 NumberHelper、DateHelper、UrlHelper、TagHelper、TextHelper 等辅助方法;支持日期格式化、货币格式化(金额以分为单位存储)、徽章/标签生成、邮件与电话链接,以及为 nil 值返回占位 span;所有面向用户的文本使用 I18n;颜色映射使用常量。

使用方式:先写失败测试(RED),运行 bin/rails test test/presenters/event_presenter_test.rb 确认失败;再实现继承 BasePresenter 的 presenter,运行同一命令确认通过(GREEN)。控制器中可单个包装 EventPresenter.new(@event),集合用 events.map { |e| EventPresenter.new(e) },需要路由辅助方法时传入 view_context。

适用场景:需要从模型抽取视图格式化逻辑、统一日期/货币/徽章展示、并希望以测试驱动方式开发 presenter 的 Rails 项目。

限制:资料未提供安装命令、依赖版本、收费或平台信息;示例中的 BasePresenter 假定已存在,具体项目约定需以实际代码为准。