问题标签 [refile]

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 回答
1484 浏览

ruby-on-rails - 在生产中找不到 AWS 凭证

我正在使用 refile gem 将 Rails 应用程序部署到生产环境中,用于文件上传并连接到 s3 进行存储。在开发中一切正常我在尝试上传新图像或检索现有图像时在生产中遇到以下错误:

我已经像这样在 RAILS_ROOT/config/initializers/aws-sdk.rb 文件中配置了凭据

我已经通过键入确认 env 变量存在

正确返回密钥。有任何想法吗?

0 投票
1 回答
482 浏览

ruby-on-rails - FactoryGirl 与 Refile gem

我选择 refile gem 来处理我的应用程序中的文件上传。我在使用 FactoryGirl 时遇到了一些麻烦。在我的工厂里,我有这样的东西:

当我运行一些功能规范时,它会返回以下错误:

编辑:此错误是由我的视图模板中的这一行引起的:

0 投票
2 回答
959 浏览

ruby-on-rails - Refile S3 后端用于生产,文件后端用于开发模式

这是我的第一个带有Refile gem的 Rails 项目,所以我还没有完全掌握这个美妙的文件上传 gem 的所有细节。

我正在尝试配置 Refile gem,以便在生产模式下将文件上传到 Amazon S3,但在开发模式下将文件上传到文件系统。

我的 config/initializers/refile.rb 文件如下所示:

但是当我尝试在开发中上传图像时,我收到以下错误消息:

因此,我尝试通过在条件中添加配置来解决此问题:

但这并没有解决它,我仍然在开发模式下收到上述错误消息。

有谁知道我如何配置 Refile 以在生产模式下将文件上传到 Amazon S3 并在开发模式下将文件上传到文件系统?

感谢您的帮助,

安东尼

0 投票
1 回答
911 浏览

ruby-on-rails - Pundit 授权使用 Refile gem 上传的文件

如何使用 Pundit 对通过 Refile gem 上传的文件进行授权?我上传的文件应该仅限于上传它们的用户,但是任何拥有 Refile 的 attachment_url 生成的 url 的人都可以访问该文件。由于 Refile 使用它自己的 Sinatra 应用程序,因此我没有 Rails 控制器可以调用 Pundit 的授权方法。

0 投票
1 回答
199 浏览

ruby-on-rails - 重新归档生产错误 Rails

在开发中,我的 rails 应用程序运行良好。

相反,在生产中没有图像,它被上传到服务器但它不会显示出来。我正在使用默认后端。

直接访问图片网址时,我看到的只是“错误”。:(

希望有人能给我一个提示。

0 投票
1 回答
303 浏览

ruby-on-rails - Refile Gem:当 remote_image_url 无效或不存在时忽略异常

我们正在使用refile来允许用户将图像上传到我们的 S3 后端。此外,我们允许用户选择输入 Internet 上任何图像的 URL(通过remote_image_url属性)。

只要输入的 URL 指向一个实际的文件,它就可以正常工作。但是,如果 URL 有错误,或者给出了一些无意义的输入,Refile则会抛出以下异常:

是否有一个选项可以忽略输入的 URL 无效的情况(类似于validate_downloadCarrierWave 中的选项如何工作),并且理想情况下,使用我们的后备图像代替?

我们尝试使用raise_errors设置为 的选项安装附件false,但结果相同。

我们的项目使用Rails 4.2.0Refile 0.5.3.

编辑:

我已确认此异常是较低级别的SystemCallError,来自Kernel.open,并且此异常类型没有被 Refile 抢救:

我正在处理重新提交以解决此问题的拉取请求。

编辑2:

在处理这个问题时,我们发现了一个重大的安全问题Refile使潜在的攻击者能够使用远程代码执行。

Refile gem 具有将提供 URL 并上传远程文件的功能。这可以通过remote_image_url在表单中​​添加一个字段来完成,其中image是附件的名称。此功能使用 open-uri 发出此 HTTP 请求,而无需验证传递的 URI。攻击者可以制作一个在主机上执行任意 shell 命令的 URI。

如果您使用Refile版本0.5.0- 0.5.3,请升级到最新版本。升级也将解决上述问题。

0 投票
1 回答
386 浏览

ruby-on-rails - 重新上传到 S3 仍然返回 localhost 上传

我按照refile/refile中的教程进行操作,并尝试使用 `refile-s3 将我的照片上传到 S3。但是,它仍在上传到我的本地主机。我想知道为什么?

Github 中的代码:https ://github.com/chrisyeung1121/refile-example

我错过了什么吗?

0 投票
0 回答
197 浏览

ruby-on-rails - 使用 Rails Rest API 将文件移动上传到 S3

我在 Rails 中有一个 Web 应用程序可以上传个人资料图片,我正在使用 Refile gem 将照片直接上传到 Amazon S3。

但现在我也需要从移动应用程序上传。女巫是最好的方法吗?

我考虑 Rails 中的 Rest API 接收二进制数据,然后使用 Async Jobs (Sidekiq) 上传到 Amazon S3,但不确定该方法是否是最佳方法。

谁能帮我?

谢谢!

0 投票
1 回答
124 浏览

ruby-on-rails - 将多个图像(url)添加到同一个列表栏

我的应用程序有一个列表table(:name, :description)和一个pictures table(:image_id, :listing_id). 我正在使用嵌套表单(选项卡式)来获取所有这些信息,并且它与 gem 一起工作正常carrierwave。在过去的几天里,我正在尝试将 amazon s3 直接图像上传功能添加到我的 rails 应用程序中。但似乎很难以嵌套形式实现这一点。所以我打算在列表本身中列出所有 image_url。由于它只是真实图像的网址,这样做是个好主意吗?(我只允许每个列表最多 8 张图片)??

如果可能的话,我打算用 refile 来做到这一点。寻找某人对这个话题有所了解......在此先感谢您的帮助:)

0 投票
1 回答
751 浏览

ruby-on-rails - 重新提交 accept_attachments_for 问题

我正在使用带有 rails 4 应用程序的 Refile。

我收到错误消息:undefined methodaccepts_attachments_for'`

我正在尝试进行多张图片上传,并且有两个模型:书籍和 blob。

我的书.rb:

我的 blobs.rb:

如果我检查 rake 路由,它显示 refile 已安装,那么问题是什么?