首页 > 解决方案 > 如何在继续控制器操作 after_update 之前等待 Rails 服务响应?

问题描述

在我的网站上,用户可以通过 simple_form_for 上传文档(感谢 Cloudinary gem):

<%= f.cl_image_upload(:ids, allowed_formats: %w(jpg jpeg png)) %>

由于他们的 API,这些文档被发送到 Stripe。所以在我的用户模型中,我放了:

after_update send_documents_to_stripe, if: :documents_are_upload?

(它只是检查用户是否上传了他的文档,如果是,则调用将文档发送到 Stripe 的函数)

除了after_update等待将文档输入数据库但不等待文档在 Cloudinary 上可用。

因此,当我尝试将文档发送到 Stripe 时,我收到此错误:

错误形式的轨道

有谁知道我在技术上可以等待以确保 Cloudinary 在将文档发送到 Stripe 之前已收到用户的图像?

非常感谢 !

标签: ruby-on-railscloudinary

解决方案


不确定 Cloudinary 的东西,但您也可以完全在客户端执行此操作,直接上传到 Stripe:https ://jsfiddle.net/thorstripe/bdm3j2rn/

console.log("Code because I linked a JSFiddle...");

推荐阅读