问题标签 [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 投票
1 回答
107 浏览

ruby-on-rails - Rails 从通过神社上传到文章中的文章中调用图像

嘿,伙计们,我想在我的家中创建一个显示我最近的文章的框,在框中应该有帖子的标题和几行内容(我想这很可行)但我也想拥有通过神社和 trix 上传的帖子中的图像。一般来说,我不知道如何从帖子中获取图像以使用它们。我知道如果有更多图像可能会很困难,但我想将它们随机化。

我的模特 post.rb

我的模型图像.rb

我的图像控制器

结尾

0 投票
2 回答
610 浏览

ruby-on-rails - Shrine::Error: storage :cache 未在 FileUploader 上注册

我正在使用 Mongoid 6.0.3、ruby 2.3.1 和 rails 5.2

我创建了一个 file_uploader 类来使用神社处理我的上传。

/app/uploaders/file_uploader.rb

config/initializers/Shrine.rb

但是保存数据时出现错误,

在我的模型中,它被称为

0 投票
1 回答
41 浏览

ruby-on-rails - 在 Capistrano 部署我通过神社上传的图像后不再显示(Rails + SQlite3)

当我尝试部署我的新应用程序时,一切都很顺利。但是我曾经遇到过这样的问题,即我的数据库中的帖子在 capistrano 部署后消失了。我发现,这与我的 Sqlite3 数据库有关,并且我必须在我的 database.yml 中添加用于生产的共享路径。这就是为什么我补充说:

现在我的帖子在上限部署后仍然存在,但我的图像不再显示。我想我必须把它们,或者以某种方式将它们链接到那个文件夹,但我不确定如何。我的神社.rb 看起来像这样:

将上传/缓存更改为/home/deploy/apps/Blogapp/releases/shared/uploads/cache

并上传/存储到

似乎没有解决问题......有什么想法吗?

0 投票
1 回答
644 浏览

ruby-on-rails - Rails 5 + Shrine + 多态模型 + 漂亮的位置

我正在使用 Shrine 直接上传到 S3,我正在尝试使用该pretty_location插件在我的 S3 存储桶中设置位置。

我有一个文档模型具有file_datatext 属性并连接到 FileUploader:

其他模型通过以下关注点与文档模型相关联:

这是我的文件上传器:

当通过客户端浏览器通过嵌套属性从用户的文件系统上传文件时,一切都按预期工作,我能够在我的 S3 存储桶中生成一个漂亮的位置。

但是,我有另一个模型,我试图将一个 PDF 文件上传到 S3,该文件是在后端使用以下设置生成的。

Invoice 模型不使用关注点,因为我希望它通过has_many关联连接到多态文档。

上传工作正常,我可以将 PDF 上传到我的 S3 存储桶,但我无法生成漂亮的位置,因为当我在generate_location方法内部时context[:record]thedocumentable_typedocumentable_idare nil

这是一个奇怪的行为,因为在 rails 控制台中,我可以通过运行Invoice.last.documents.file.url.

我尝试以不同的方式创建文档记录,尝试使用documentable适用于其他模型的相同关注点,但结果始终相同,我已经没有想法了。

有谁知道为什么documentable_typeanddocumentable_id没有被传递到contextFileUploader 内的对象中?

0 投票
1 回答
493 浏览

javascript - 尝试使用神殿 direct_upload 为 aws rails 5.2 实现拖放直接上传时出现问题

代码:

image_upload.js

神社.rb

矩阵上传

长话短说,我在论坛上使用 trix 来处理富文本,所有模型和控制器都在工作,我正在尝试通过拖放到编辑器中进行 direct_upload,如下所示 但无法正确获取 js。

所有其他配置都直接从文档中设置

照片正在上传到我的 aws,但所有照片都将在几分钟后过期

示例:https ://sprout-free-forum-photos.s3.amazonaws.com/store/de6271df193b0ae16e14c3297c58c363.jpg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAINSUNFHRJEDP6TQA%2F20181027%2Fus-east- 1%2Fs3%2Faws4_request&X-Amz-Date=20181027T192116Z&X-Amz-Expires=900&X-Amz-SignedHeaders=主机&X-Amz-Signature=a4c9da3b5933ca29954dfaf11e592543c69a5a7ad1d4dcd3b70747ef06

即使我的存储桶设置为公开阅读

任何帮助都会很棒我迷路了!

这是当前的现场直播是我的完整 git

0 投票
1 回答
465 浏览

javascript - 启迪服务器与神社集成“处理大型上传文件大小> 1 gb”

我正在尝试将tus-server神社集成以将视频文件上传到 Vimeo。

Client.js


这里默认tus服务器,直接将文件上传到data/项目根目录下有文件的文件夹中。

我想要实现的是将video文件上传到 Vimeo

像:

  1. 文件转到${API_BASE}/files
  2. 矿工获取文件
  3. 我将文件传递给 Vimeo(使用vimeo_me2
  4. Vimeo 上传文件,将 video_url 发回,我现在将 video_url 插入到某个 video 表中。
  5. 上述所有这些过程都需要可恢复。

我正在使用vimeo_me2 gem。

任何人都可以提供将 tus 服务器与神社集成/配置的解决方案吗?

非常感谢任何帮助!

0 投票
1 回答
233 浏览

ruby - 使用 Shrine 提取背景中的图像尺寸

我已经使用 Shrine 设置了直接上传到 S3。这很好用。其中,我启用了以下插件:

如果我错了,请纠正我,但图像尺寸提取似乎是同步完成的。如果我让用户通过 Uppy 批量上传图片,然后将它们全部保存,这似乎需要很长时间。

我想做的是异步执行图像尺寸提取 - 我不需要缓存文件可用的尺寸。如果可能的话,我想在文件被提升到商店时在后台执行此操作。有没有办法做到这一点?

0 投票
2 回答
690 浏览

ruby-on-rails - 无法检索 Shrine 元数据

由于 Paperclip 弃用,我从 Paperclip 切换到 Shrine。

在我的模型Profilepic.rb文件中,我曾经检索图像变体的尺寸,如下所示:

基本上我正在保存图像的垂直比例。

它与 Paperclip 配合得很好:我在保存值之前抓取了临时图像queued_for_write并检查了尺寸。Paperclip::Geometry

在 Shrine 中,我向上传者添加了以下内容:

它工作得很好,因为我拥有所有可用信息并且图像已正确上传到 S3。

然而我保存图像比例的新方法不再有效:

我明白了

ProfilepicUploader::UploadedFile:0x00007f69a685c750> 的错误未定义方法“[]”

而在控制台中,创建图像后:

确实返回正确的值。

编辑

我的上传者:

我的模型:

0 投票
1 回答
220 浏览

ruby-on-rails - WickedPDF 生成的带有神社的 PDF 文件上传不填充数据字段

我正在从 Paperclip 迁移我的整个升级过程,并且在生成的 PDF 方面存在问题。

处理上传的子模型是一个名为quotepdf

在某些时候,quotepdf会生成一个实例并有一个链接到它的附件。

这是为神社改编的quotepdf模型

上传者:

以及使用 Wickedpdf 创建“quotepdf 记录”和 PDF 附件的 Sidekiq 工作人员:

使用回形针,它曾经可以正常工作。虽然使用神社,但没有任何内容保存到新的“quotepdf”记录的“quote_data”列中。工人也没有返回错误。

缓存文件确实已上传到 S3 存储桶,因此可以正确生成 PDF 文件。最终文件丢失。

编辑

通过剥离我的上传器使其工作:

但我不明白为什么它之前失败了:文件只有 22KB,确实是 PDF。不能是验证问题..

编辑 2

Ok mimetype 检测到的确实是null

虽然我的初始化程序有Shrine.plugin :determine_mime_type

0 投票
1 回答
281 浏览

ruby-on-rails - 带有 Rails 的 Shrine gem:生成带有上传端点的版本?

我在 Rails 5 中使用 Shrine gem。我启用了插件 upload_endpoint、versions、processing 和 recache。我希望在上传端点响应中获得生成的版本。

为什么只有在保存整个记录时才会发生进程回调进程(:recache)?以及如何使其在直接上传后立即生成版本?