用途:指导在 Spree 5.x 的 Rails 后台(spree_admin gem,挂载于 /admin)中做定制开发。后台为 Rails 引擎,使用 ERB 视图、Stimulus + Turbo 与 Tailwind;Spree 6.0 将引入 React 后台。
主要能力:用 spree rails g spree:admin:scaffold Spree::Brand 生成完整 CRUD(控制器、index/new/edit 视图、_form、表格与导航初始化器、路由);在初始化器中通过 Spree.admin.navigation.sidebar.add/remove/update 管理侧边栏;通过 Spree.admin.tables.<name>.add/remove/update 增删改表格列(支持类型、排序、筛选、位置);用 render_admin_partials 注入点做轻量覆盖;在宿主应用同路径覆盖视图;用 Spree::Admin::FormBuilder 的 spree_text_field、spree_money_field、spree_collection_select 等方法及组件助手构建 UI;用装饰器扩展控制器;添加自定义 Stimulus 控制器。
使用方式:命令采用 Spree CLI 形式(spree …,Docker);经典 Rails 应用改用 bin/rails / bundle exec rake。路由需写入 Spree::Core::Engine.add_routes 块,改后执行 spree restart。覆盖视图须整文件复制后修改,保留 data-controller 绑定。
适用场景:为 Spree 后台新增资源管理页、调整导航与列表、定制表单与交互。
限制:装饰控制器较侵入,应优先考虑订阅者或服务替换;部分页面(如 Payment Methods)不使用表格注册表;Customers 页注册键为 :users。具体版本兼容与更多细节以官方文档为准,资料未提供收费等信息。