SuperAPI AI 工具集

active-storage

智能体与模型

查看项目

更新于 10-15 20:05

技能介绍

用途:Active Storage 是 Rails 中处理文件上传与云存储的组件,本技能在用户询问文件上传、附件、has_one_attached、has_many_attached、图片变体等话题时提供指导。

主要能力:支持单附件与多附件模型配置,可指定存储服务;支持图片变体(resize_to_limit、resize_to_fill、resize_to_fit、resize_and_pad、crop、rotate、format 等)与命名变体;支持 PDF、视频预览;支持直传(direct_upload)及对应 JavaScript 事件;支持本地磁盘、S3、GCS、Azure、Mirror 等存储服务配置,并可设置公开文件;支持通过 active_storage_validations gem 或自定义方法校验附件类型、大小与数量;支持下载、临时文件打开、元数据读取、purge/purge_later 删除及 with_attached_* 预加载避免 N+1。

使用方式:先执行 rails active_storage:install 与 rails db:migrate 生成 blobs、attachments、variant_records 表;在模型中声明 has_one_attached 或 has_many_attached,可附带 service 与 variant 块;通过表单 file_field 或 attach 方法附加文件;用 url_for、rails_blob_path、image_tag 展示;在 config/storage.yml 配置服务,并在各环境设置 config.active_storage.service。

适用场景:Rails 应用中的头像、文章图片、文档等附件上传与展示,需要图片处理、云存储或直传的场景。

限制:资料未提供具体版本要求、性能数据、收费信息及完整部署步骤;部分功能依赖额外 gem(如 active_storage_validations)或外部服务凭据。