问题标签 [rails-activestorage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3350 浏览

ruby-on-rails - 如何在 Amazon S3 中自定义 Rails 5.2 ActiveStorage 附件的路径?

添加附件时,例如

保存的文件最终位于 S3 存储桶的顶层。如何将它们添加到子目录?例如,我的旧回形针配置可以按型号名称在目录中分类。

0 投票
1 回答
909 浏览

ruby-on-rails - 在 Rails 中使用图像将 JSON 格式卷曲到 ActiveStorage

如何通过 curl 发布以将文件(在这种情况下为图像)上传到活动存储?文档没有确切说明如何使用 curl 或 JS(例如 Axios)

像这样的工作(如果我关闭真实性令牌(skip_before_action :verify_authenticity_token)):

这将像正常的 curl JSON 请求一样发布。

像这样在 base64 中编码文件看起来很有希望:

虽然我ActiveSupport::MessageVerifier::InvalidSignature在上传时得到了一个。我怀疑 base64 不是正确的签名。我应该使用什么来编码要上传到活动存储的图像?

编辑:

不是通过 JSON,而是通过表单工作:

但是,您如何通过 json 调用来做到这一点,以便可以通过 Axios 或其他方式完成?

0 投票
1 回答
380 浏览

ruby-on-rails - 为什么 S3 上的主动存储需要 `region` 字段?

今天我尝试了rails 5.2.0。

rails new它在编辑时生成以下文件模板。

问题:

  • 据我所知,S3服务中没有区域。如果是这样,这个参数字段region在 Active Storage 领域是什么意思?
0 投票
1 回答
108 浏览

ruby-on-rails - heroku push 突然失败

我昨晚推到了heroku,现在我的推失败了,出现以下错误。Heroku 状态似乎还可以。我的 heroku 配置将 RAILS_MASTER_KEY 设置为我的 master.key。那没有帮助。

有什么经验……或者,能够指出我的解决方法吗?

0 投票
2 回答
7066 浏览

ruby-on-rails - 主动存储种子 Rails

我想用一些包含活动存储附件的实例来为我的数据库播种,但我不知道该怎么做。我尝试了一些方法,但没有成功。

有我的种子。

谢谢你的帮助

0 投票
2 回答
1502 浏览

ruby-on-rails - Rails ActiveStorage 如何通过 REST API 上传文件

如何将文件从外部服务或应用程序(iOS 应用程序、Go 应用程序等)上传到使用 Active Storage 本地文件存储的 Rails REST API?

我能找到的所有教程都使用 HTML 表单。我想通过 POST 请求将我的文件上传到 Rails API。我不确定的主要事情是将文件发送到后端需要哪些标头和哪种格式。

0 投票
1 回答
716 浏览

ruby-on-rails - S3 中的 ActiveStorage 和层次结构

我正在尝试使用 ActiveStorage 来存储我的图像。使用 Paperclip,在 S3 存储桶中,我们可以拥有 product/id_image/*.png。但是对于 ActiveStorage,所有内容都位于根目录和变体文件夹中。

在 S3 上上传文件时,有什么方法可以实现类似层次结构的行为,至少按模型一个文件夹?

0 投票
1 回答
4174 浏览

ruby-on-rails - 从 Active Storage 更改默认 URL

我们能否将创建的默认“永久”url 从活动存储更改为重定向到 S3。类似于 rails/active_storage/representations/. 我不喜欢 url 中的框架名称。

谢谢

0 投票
1 回答
285 浏览

ruby-on-rails - Rails - 如何将方法委托给集合

我正在使用 ActiveStorage 通过 API 上传文件。我的“文件”模型在“Loot”下命名,所以它是“Loot::Files”。文件模型有一个关联(ActiveStorage)“has_many_attached :files”。

用户.rb

战利品/file.rb(战利品::文件)

虽然这有效(我可以调用 user.files.files),但在文件上调用文件真的很丑陋和尴尬。

有没有办法保留命名空间“Loot”但只需要调用 user.files 来访问 ActiveStorage 文件?我尝试使用委托,但它似乎无法委托给集合。

更新:我尝试了以下代表

试试 1

用户.rb

这样,调用“User.first.files”,我收到以下错误

试试 2

用户.rb

错误:

尝试 3 - 重命名

我尝试将 Loot::Files 重命名为 Loot:Uploads 并使用以下委托

用户.rb

但后来我在调用 User.first.files 时得到以下信息

0 投票
5 回答
5821 浏览

ruby-on-rails - ActiveStorage 上传大型 base64 编码字符串?

如果我有一张在客户端上使用 JavaScript 编辑/生成的图像(例如,裁剪的照片或画布绘制的结果),有没有办法使用 ActiveStorage 上传它?

它通常是一个包含"<img src='data:image/jpeg;base64,...=='>"存储在 JavaScript 变量中的大字符串,而不是文件。