问题标签 [shrine]

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 投票
0 回答
87 浏览

ruby-on-rails - 如何获取 Angular 5 寺庙名称属性以匹配 Rails 5 附件属性

我正在开发一个使用 Angular 5 前端和 Rails 5 后端的应用程序。两者都是通过 JSON 进行通信的 API。此外,为了上传,我将 Shrine gem 与 Uppy 一起使用。为了开始上传和运行,我遵循了这两个教程: https://github.com/shrinerb/shrine-tus-demohttps://github.com/shrinerb/shrine/wiki/Adding-Resumable-Uploads

我遇到的问题是要将数据发送到 rails,从 Temple 上传的 name 属性和 rails 附件必须匹配才能将数据传递给 rails 应用程序。因此,从教程中,这是:

必须与 name 属性相匹配:

由于我没有使用 Rails 前端,因此数据不太容易传递。有什么办法可以调和两者。我尝试将以下内容作为名称属性值传递给 Rails API:

我什至尝试过发送 JSON 值,例如:

因为这与我可以在 rails 控制台中使用 movie.video 时相同的 JSON 格式相匹配。

有什么办法可以使这项工作?

编辑:

好吧,我问错问题了。抱歉,这是我第一个没有遵循教程的项目。我花了很多时间试图完成这项工作:

在我意识到数据是通过 tus-js-client 和 tus-server 发送之前。因此,正确的问题应该是如何将正确的 name 属性发送到 tus-js-client 以便可以将其发送到 tus-server 并最终传递给 Rails 应用程序。有关后端的更多信息,这里是创建动作和电影参数:

另外,对于我如何发送这些信息,我使用的是 Uppy 的内置提交。这放弃了 Angular 通常的提交方法,因此通过 tus-js-client(我认为)提交。如果信息意味着什么,我花了很长时间尝试各种方式尝试提交名称属性,使其与附件属性匹配。

0 投票
1 回答
250 浏览

ruby-on-rails - 读取rails种子文件后图像文件被删除

在 rails 种子文件中使用它来选择随机图像。

但是在阅读了它从我的资产文件夹中删除该图像之后。这里可能是什么问题?上面的代码是假设这样做还是与shrine(图像上传器)有关?

使用版本Rails 5.2.0shrine 2.10.1.

我的满imageUploader.rb

0 投票
0 回答
341 浏览

ruby-on-rails - 视频不是允许的类型(允许的类型:video/mp4)、Shrine、Rails

我正在尝试验证我的视频是否只允许上传 .mp4 视频。我正在使用 Shrine 来执行此操作。没有验证的视频上传没有问题,但是如果我添加验证代码,则会显示错误:Video isn't of allowed type (allowed types: video/mp4)

这是我的代码:

video_uploader.rb

我要上传的视频绝对是 .mp4 文件,我的image_uploader.rb文件中有这个确切的验证,所以我不确定为什么它不能与我的 .mp4 文件一起使用video_uploader.rb。有任何想法吗?

0 投票
1 回答
925 浏览

heroku - Heroku、Shrine 和 Amazon S3:博客文章图像在一段时间后消失

我有一个使用 rails 5.1 开发的博客页面。一切正常,除了我在生产中创建帖子并附加图像后,图像会在一段时间后停止显示(比如 30 分钟)。我在互联网上搜寻解决方案并看到表明问题与 Heroku 在每次应用程序重启后擦除目录有关。提供的一种解决方案是将您的图像托管在 Amazon S3 等服务上。

但是,我已经设置了 S3,并且图像被发送到如下所示的存储桶: 在此处输入图像描述

但是,博客文章图像仍然消失。我需要帮助,因为我无法弄清楚我错过了什么。以下是相关代码:

神社.rb:

宝石文件:

我使用 Figaro gem 来屏蔽 env 文件。它们很好,因为 S3 存储桶响应了,而且我已经在博客上启动并运行了 OmniAuth。

这是它在图像的 chrome 控制台上显示的错误:

在此处输入图像描述

我真的需要帮助来启动和运行这个博客。感谢您的时间。

0 投票
1 回答
700 浏览

ruby-on-rails - 浏览器缓存神社 s3 私人附件

我刚刚在 s3 上创建了一个私有存储桶,用于包含用户个人资料图片。使用公共存储桶,所有图像都被正确缓存(以前的回形针配置具有相同的设置)。

我有以下神社初始化程序:

以及以下上传者:

CacheControl 在 s3 对象上正确设置为 1 周,并且在响应中可见。我注意到,在每个请求上,签名的 url 关于X-Amz-Signature哈希值都不同,这很可能导致缓存未命中(每个请求的 Etag 相同)。我认为这是它不起作用的原因,但我不知道如何在对象未过期的情况下使 X-Amz-Signature 相同。

0 投票
1 回答
525 浏览

ruby-on-rails - 如何在 Rails 应用程序中检查附件是否加密

如果用户尝试在 Ruby on Rails 应用程序中上传加密文件,我想给出验证错误消息。我正在使用神社宝石进行附件。我怎么能做到 - 有什么想法吗?

我正在使用:Rails 5.1.6,ruby 2.4.2p198,神社 2.9.0。


这是我的初始化程序

这个上传者

结尾

当我创建文档时。它不检查并接受加密文件

0 投票
1 回答
968 浏览

ruby-on-rails - Shrine.rb - 上传后如何访问文件路径/原始文件

我还有其他一些可以在图像上执行的任务。例如选择多个图像,并将它们组合成一个图像。我让那部分使用 RMagick 和本地文件,我让上传部分使用 Shrine,但我需要将两者连接起来。上传图像后(理想情况下,该解决方案应与本地文件系统存储和 S3 一起使用),我如何才能再次访问该文件,以使用 ImageMagick/RMagick 对其进行操作?我假设如果我使用 S3,我需要将 S3 中的图像 DL 到服务器并临时存储它们?有没有其他方法可以做到这一点?

0 投票
1 回答
100 浏览

ruby-on-rails - Shrinerb 产生模糊的 PDF 文件上传

我已经搜索过,但找不到任何有关使用Shrine上传 pdf 文件的信息。我有它的工作,但 pdf 是模糊和像素化的,即使在引用(:original)版本时也是如此。

初始化程序/shrine.rb

image_uploader.rb

产品/show.html.erb

0 投票
0 回答
347 浏览

image - 使用 Texteditor 进行主动存储?

我对 Ruby 和 Ruby on Rails 非常陌生,但我正在尝试开发自己的小博客项目。我按照 YouTube 上的一个非常好的指南开始使用它。目前,我可以创建帖子、编辑和删除它们,并且它们可以通过引导 css 显示出来。对于新的博客文章,我使用 tinymce,这可能是我想做的一个问题。

我的目标是实现一个仅包含图片的图片库,并能够在我的帖子中实现图片。因此,当我写一篇文章时,我可以在该文章中实现一个或多个图像。这些图像应该会自动添加到图像库中。

也许这有点天真,但我认为这必须是可能的,但似乎很难。使用主动存储,我只能在发布之前或之后附加文件,这不是我想要做的。我读到了 trix 和神社,但 trix 并没有真正为我工作,也许我的帖子模型不正确?好像没有渲染。

我的想法甚至可能吗?我需要做什么?我喜欢建立我的博客并修复错误和东西,但现在我似乎无法让它工作。

0 投票
1 回答
995 浏览

ruby-on-rails - Ruby - 如何使用 Shrine 设置 data_uri (base64) 文件名

我正在尝试将文件名设置为使用带有 FileSystem 存储的 Shrine gem 上传的 base64 文件。

我尝试修改file.metadata[:filename] = 'test.png',但文件名仍然为零。

神社.rb

文件上传器.rb

附件.rb