回形针 - 保存文件后运行方法?

2023-12-21

我正在开发一个需要接受文件上传的项目。文件上传后,我正在进行一些处理 - 从文件中提取信息。我最终计划在后台工作程序中运行它,但它目前正在内联运行。

我尝试使用 after_create 和 after_save 来处理文件,但似乎我的方法是在 Paperclip 的保存方法之前运行的 - 所以我的测试失败,并显示“没有这样的文件或目录”。

有没有办法提前触发保存方法,或者在文件保存到文件系统后以某种方式运行我的方法?


您无法在回调中读取回形针文件,因为它尚未保存到文件系统(或屁股)。为什么,我不太确定。

EDIT:原因是回形针通过以下方式写出文件after_save打回来。该回调发生在after_create

但是,您可以获得用于处理的文件有效负载。例如:

class Foo < ActiveRecord::Base

  has_attached_file :csv

  after_create :process_csv

  def process_csv
    CSV.parse(self.csv.queued_for_write[:original].read)
    # .. do stuff
  end

end

两分钟前我必须这样做。希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

回形针 - 保存文件后运行方法? 的相关文章

  • Rails 教程 - User.rb 文件错误

    我正在关注 Railstutorial org 第 7 章 我正在尝试运行该应用程序 但出现以下代码错误 该错误表明我需要在文件末尾添加另一个 结束 但我已经尝试过此操作 但没有成功 错误是 Users woshea rails sampl
  • 无法在 Windows 7 上安装 Rmagick 和 Imagemagick

    当我跑步时gem install rmagick 2 13 1 gem从 rmagick 2 13 1 gem 所在的目录中 我收到一个错误 指出它无法构建 gem 本机扩展 下面显示 c Ruby192 bin ruby exe extc
  • rvm + Rails3 + gmaps4rails -acts_as_gmappable

    我是一个红宝石导轨之类的菜鸟 抱歉 如果我的问题很愚蠢 我设置了一个运行 ruby 1 8 7 p334 的 rvm 作为用户 环境 我已经为我的 应用程序 创建了一个 gemset 现在我想在页面上显示地址的地图 我四处寻找 发现了 gm
  • 从邮件程序访问助手?

    我试图从 Rails 3 邮件程序访问帮助程序方法 以便访问会话的当前用户 我将 helper application 放在我的邮件程序类中 这似乎可以工作 但其中定义的方法对我的邮件程序不可用 我收到未定义的错误 有谁知道这应该如何运作
  • 设计忽略我的自定义策略

    我想创建一个用于访问 API 的自定义身份验证策略 我按照示例代码进行操作设计忽略自定义策略 https stackoverflow com questions 3503827 devise ignoring custom strategy
  • Rails 4 - 如何在活动记录查询中为includes()和joins()指定别名

    我如何给出别名 例如includes 给出如下 用户 活动记录模型 Student 活动记录模型 继承自User STI Teacher 活动记录模型 继承自User STI 项目 活动记录模型 这里有一些例子 第一个案例 更多性传播感染协
  • Rails:ENV.fetch() 和 ENV[] 之间的区别

    这两种语法有什么区别 ENV fetch MY VAR ENV MY VAR 我见过 Rails 5 在不同的地方使用了这两个版本 但无法弄清楚其中的区别 除了第一个需要输入更多字符之外 The ENVhash like 对象是普通的 Ru
  • Rails 3.1 + 回形针 + jQuery 文件上传

    我一直在寻找一种设置 Ruby on Rails 3 1 的方法回形针 https github com thoughtbot paperclip and jQuery 文件上传 https github com blueimp jQuer
  • 如何在rails中创建带有外键别名的装置?

    我有两个模型 App and User 其中App有一个创造者 他是User app rb class App lt ActiveRecord Base belongs to creator class name User end user
  • Rails 轮胎 Elasticsearch 奇怪的错误

    我已经索引了Car拥有一辆车记录的车型mercedes benz在数据库中 如果我搜索这个词benz我收到错误 ActiveRecord RecordNotFound in CarsController index Couldn t fin
  • Rails:与自身的多对多关系

    我在创建此关联时遇到问题 考虑模型 Entry 我希望条目有许多作为父母的条目 并且我希望条目有许多作为孩子的条目 我想通过一个我称为 关联 的模型来实现这种关系 所以这是我尝试的 移民 class CreateAssociations l
  • nginx 504 网关超时

    我正在 nginx 上使用 phusion passenger 运行 Rails3 0 7 项目 当我正在做 ajax 时 大约需要 15 分钟来处理 调用 ajax 10 分钟后 它会跳出一个 Firebug 错误 显示 504 Gate
  • Ruby on Rails 中的块调用

    我正在尝试清理我的代码并摆脱许多丑陋的哈希值 在我看来 我定义了几个这样的操作 actions interest gt Show interest link to disabled gt true follow gt Follow this
  • 从同一个 Rails 代码库运行多个站点?

    我有一位客户想要将他们在一个领域取得成功的 Rails 应用程序应用到另一个类似的领域 该应用程序的这个新实例将开始非常相似 所有相同的功能 不同的徽标和颜色 但是 如果新网站成功 它将不可避免地需要进行重大自定义 而这些自定义不应应用于原
  • 如何在 Haml 中有条件地使用“content_for”包装器

    我正在尝试找到一种更干燥的方法来执行以下操作 if request xhr javascript my javascript else content for scripts do javascript my javascript 我在许多
  • Rails 模型中 self 的价值是什么?为什么没有明显的实例方法可用?

    我的 Rails 3 1 6 应用程序中有一个自定义访问器方法 即使该值不存在 它也会为属性分配一个值 my attr 属性是一个序列化哈希 除非指定了空白值 否则应将其与给定值合并 在这种情况下 它将把当前值设置为空白值 添加了检查以确保
  • 如何在 Cloud9 上使用 Rails Composer 和 postgreSQL 并在 Heroku 上部署

    使用过程轨道作曲家 https github com RailsApps rails composer使用 postgreSQL 创建 Rails 应用程序Cloud9 http c9 io在 Heroku 上部署充满了警告和错误 可能会让
  • 从 JSON 在 Devise 中创建用户

    我正在致力于将运行 Devise 的 Rails 3 1 应用程序与我的 iOS 应用程序集成以进行用户身份验证 我希望用户能够从应用程序注册 然后我可以存储这些凭据以便稍后登录 使用 RestKit 我这样做 IBAction regis
  • 分享到 Facebook 墙,不弹出对话框

    我正在 Rails 中构建一个 Facebook 应用程序 用户在其中创建一个条目并将其提交到其他用户的条目集合中 我想做的是在提交时自动将指向该条目的链接共享到用户的墙上 但我无法理解 Graph API 文档在没有弹出对话框的情况下执行
  • Rails 2 Mailer View 将 3D 添加到字符串之前

    我有一个非常旧的 Rails 应用程序 它试图为新用户发送验证电子邮件 但永远找不到令牌 因为由于某种原因 无论我如何生成链接 链接都会以 3D 形式添加到字符串前面 由于某种原因 它似乎还在标记的中间注入了一个 符号 这是一些带有输出的代

随机推荐

  • 来自 Python 中不同输入的实时声音合成器

    我正在尝试构建一种踏板 1 来扭曲变化的输入声音 当我从地面开始时 我试图在 python 中生成连续的声音 并在滑动滚动条 或类似的小部件 时改变该声音的频率 我尝试使用 tkSnack python 库来生成声音 但它在生成的音调之间暂
  • 从 Dart2js 输出创建 Javascript 部署集

    在开发基于 Dart 的 Web 应用程序的 alpha 版本后 我有兴趣测试我的应用程序的 Dart2js 部署潜力 然而 似乎没有一种 干净 的方法来创建应用程序的 JS 部署版本 dart2js 代码将内容输出到 out 目录 但那里
  • 如何将参数传递给`scipy.integrate.solve_ivp`中的事件函数?

    Scipy 正在远离odeint向solve ivp 不再支持为动力学函数传递额外的参数 反而 推荐使用 lambda https github com scipy scipy issues 8352 但是 当我对事件尝试相同的操作时 它们
  • 编译器警告 CS1591“缺少 XML 注释”未显示,但我希望它显示

    我进行了搜索 只发现了想要抑制此警告的人提出的问题 例如Visual Studio 禁用缺少 XML 注释警告 https stackoverflow com questions 7982525 visual studio disablin
  • 如何在 node.js 中从 .csv 转换为 array/json/string

    我有一个 csv 文件想在 node js express 中使用 如何将文件转换为 array json string 类型的变量 我试过了 fs readFile Resource csv function err data conso
  • 为 cucumber-html-reporter 截屏的函数生成“5000 后函数超时..”错误

    我正在使用 protractor cucumber framework 我想为我编写的测试生成 html 报告 我决定使用 cucumber html reporter 来实现它 在我的 hooks js 中 我编写了一个 this Aft
  • 语义 UI 下拉选项数据属性

    我一直在尝试附加一个data 语义 UI 下拉列表中的属性option但没有成功 数据属性不会复制到结果下拉选项中 这是我的结构select HTML
  • 从 UI 调用 System.Threading.Thread 时锁挂起

    EDIT 请参阅问题历史记录 了解未更改的问题 以免评论无效 我单击执行某些代码的按钮并创建一个线程 System Threading Thread 当我重新单击启动进程的按钮时 它会挂起并冻结用户界面 可能是什么原因 public par
  • CKEditor 对话框:通过 ID 引用输入字段

    CKEditor 对话框中的每个输入字段均使用唯一的编号重命名 但该编号会根据可见的选项而变化 我需要引用 txtUrl 它的 id 类似于 35 textInput 到目前为止 我发现这样的事情应该有效 alert CKEDITOR in
  • 将 Drupal 7 站点移至其他服务器,无法登录

    我最近将 Drupal 7 站点移至新的托管服务器 但我被困在登录页面 当我尝试登录时 我会被引导回同一页面 但 URL 会从 user to user 1 这让我相信我实际上已经登录 但我没有被转发到正确的页面 我尝试清理缓存 清空数据库
  • 在 Android 中什么时候使用片段,什么时候不使用片段?

    我是 Android 新手 我想制作一个应用程序 所以 我看到了很多教程 其中一些教程说我需要使用片段 但在其他教程中说 如果我想要或仅当我的应用程序是对于平板电脑 所以 当我必须使用片段和何时不使用片段时 我真的对此感到困惑 请向我解释何
  • JWT 令牌 SSO 流程

    我有一个关于 JWT 的 SSO 流程的简单问题 假设我们有单独的授权服务器 它向客户端应用程序 服务器和资源服务器提供 JWT 客户端尝试使用该令牌进行访问 问题是 资源服务器应该自行验证令牌 例如与身份验证服务器共享私有证书 还是应该请
  • Delphi 程序被 ClamAV 检测为误报

    我的 Delphi XE2 程序是always检测到含有病毒Jotti http virusscan jotti org en由 ClamAV 提供 而其他病毒扫描程序未检测到任何内容 AFAIK ClamAV通常与邮件服务器一起使用 那么
  • CefSharp WpfControl 和渲染到图像

    我们想要在 wpf 应用程序中的基于 chromium 的浏览器中显示网页 在浏览器中显示的网站也应该显示在另一个屏幕上 但没有交互 我想将 cefsharp wpf 浏览器控件和 cefsharp 离屏渲染结合起来 我可以使用一个 chr
  • 为什么 time.clock() 在 Windows Server 2008 X64 上返回如此大的值

    我在不同的机器上运行以下脚本并得到了完全不同的结果 经过的 time clock 太大了 Script import time start clock time clock time sleep 60 end clock time cloc
  • MacO 上的 PyOpenGL OpenGL 版本

    有人告诉我将旧配置文件从其他 stackoverflow 帖子切换到核心配置文件 但我似乎找不到方法来做到这一点 因此 我发布了一个更新的错误帖子来帮助我找到一种方法 CODE import glfw numpy from OpenGL G
  • 如何将 YYYYMMDDHHMMSS 转换为“date”可读的日期

    我有一组 YYYYMMDDHHMMSS 格式的日期 时间字符串 我想将其转换为可读的内容date公用事业 通常 我可以这样做 date d 2010 10 01 12 34 56 然而 date不喜欢 YYYYMMDDHHMMSS date
  • Python 相当于 Matlab 的clear、close all、clc

    在Matlab中 在每个文件的开头 我通常写 clear close all clc Python中有类似的东西吗 大多数人在测试脚本时会做什么 这里的问题是 plt show 是阻塞的 并且在手动关闭窗口之前不会返回到脚本 您可以尝试 p
  • 类型错误:__init_subclass__() 不接受关键字参数

    我正在尝试创建一个元类 但是当我将其分配给另一个类时 我收到错误 类型错误 init subclass 不接受关键字参数 但我没有实施任何 init subclass 为什么要调用这个函数 class Meta type def new c
  • 回形针 - 保存文件后运行方法?

    我正在开发一个需要接受文件上传的项目 文件上传后 我正在进行一些处理 从文件中提取信息 我最终计划在后台工作程序中运行它 但它目前正在内联运行 我尝试使用 after create 和 after save 来处理文件 但似乎我的方法是在