Rails wrap_parameter 未按预期工作

2023-12-19

我正在使用 AngularJS 和 jQuery-file-uploader 插件。我已经配置了 Rails 来包装我的参数

ActiveSupport.on_load(:action_controller) do
    wrap_parameters format: [:json]
end

除了当我尝试上传文件时之外,这对所有事情都工作得很好。我使用的上传器插件与正常情况略有不同,但它应该仍然可以工作。我不是让插件在添加文件时上传文件,而是创建一条新记录,然后上传文件。请求正确触发,但是文件的参数未被 Rails 包装。在我的日志中我得到

Processing by MeetingsController#update as JSON
Parameters: {"icon"=>#<ActionDispatch::Http::UploadedFile:0x007fde79178b58 @original_filename="006.png", @content_type="image/png", @headers="Content-Disposition: form-data; name=\"icon\"; filename=\"006.png\"\r\nContent-Type: image/png\r\n", @tempfile=#<File:/var/folders/_v/qsm9g7nn00s0jmfkynmvwp140000gn/T/RackMultipart20130505-15753-17ig2it>>, "id"=>"35"}

我期待看到参数是

{ :meeting => { :icon => ... }}

In my MeetingsController我有

wrap_parameters :meeting, include: [..., :icon, ...]

也通过此控制器进行的记录创建工作完美,并且参数按预期进行包装,但它对此不起作用。难道我做错了什么?


这是因为文件上传请求具有 multipart/form-data 格式。

要以这种格式也激活自动换行,您可以添加格式选项:

class  MeetingsController  < ApplicationController
  wrap_parameters :meeting, include: [..., :icon, ...], format: [:json, :multipart_form]

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

Rails wrap_parameter 未按预期工作 的相关文章

随机推荐

  • MySQL:永久设置 sql_mode

    通过 MySQL 命令行客户端 我尝试设置全局 mysql mode SET GLOBAL sql mode TRADITIONAL 这适用于当前会话 但在我重新启动服务器后 sql mode 将返回到其默认值 一个空字符串 如何将 sql
  • Codeigniter - 使用force_download函数下载文件

    我正在使用最新的 CI 我在当地工作时没有任何问题 但是当我将作品转移到实时服务器时 我遇到了问题 当我从下载选项卡下载文件时 文件将以正确的大小和格式下载 但是当我打开下载的文件时 例如 如果是图像 则图像不显示 或者如果是单词 则要求选
  • Java 不运行带参数的准备语句

    我正在使用PreparedStatement 来查询我的表 不幸的是 我没能做到这一点 我的代码很简单 PreparedStatement preparedStatement connection prepareStatement Sele
  • 我们可以在 Cubism 上使用自定义 JSON 数据吗?

    我看到了立体图 它们简直太神奇了 我有一个很大的 JSON 文件 其中包含 1000 个条目 其中包含时间戳和值 整数 Cubism 可以绘制这些图吗 我似乎找不到这方面的文档 Cubism 通常适用于实时数据 但您可以实现一个仅从 JSO
  • Swift:获取字典中键的数量

    对于快速数组 我们可以简单地使用count属性来找出集合中有多少个元素 然而 我们不能对字典键做同样的事情 执行此操作的唯一方法是使用 for 循环和计数器吗 var myDict String AnyObject intialize di
  • FFmpeg:如何将带有黑边的垂直视频转换为背景边模糊的 16:9 视频

    如何使用 FFmpeg 实现这一点 没有 FFmpeg 的示例 Adobe After Effects http www youtube com watch v yCOrqUA0ws4 索尼维加斯专业版 http www youtube c
  • Snakemake 和 pandas 语法

    我有一个输入文件如下 SampleName Run Read1 Read2 A run1 test true data 4k R1 fq test true data 4k R2 fq A run2 test samples A fastq
  • SQL Server 2012经典asp连接字符串

    我安装了 SQL Server 2012 Express 其中有一个名为BRD我创造的 我还创建了一个测试表 tempDemo 和一个测试存储过程 getStList 在里面BRD数据库 当我在查询窗口中运行存储过程时 它会起作用 因此我相
  • 移动设备上的视觉视口与布局视口

    我刚刚读了一篇关于视口的好文章 http www quirksmode org mobile viewports2 html这给我留下了一些关于移动设备上的视觉视口与布局视口的问题 布局视口的宽度和高度等于任何值 可以以最大缩小模式显示在屏
  • 在 Android 中制作自定义可绘制形状

    我想要像下面这样绘制 我可以在两个不同的 xml 文件中制作矩形和三角形 但我想联合它们来制作这样的可绘制对象 Use layer list制作这个自定义形状drawable res drawable custom shape xml
  • UnsatisfiedLinkError:无法从加载程序加载 X

    我正在尝试使用本机代码创建一个 android 项目来调用 OpenGL 函数 我正在按照本指南来启动该项目 http www learnopengles com calling opengl from android using the
  • 如何让 HtmlUnit 在 Android 下工作?

    这是我的代码 import com gargoylesoftware htmlunit WebClient import com gargoylesoftware htmlunit html HtmlPage final WebClient
  • 关于并行架构的设计模式有什么好的资源吗?

    一些背景知识 我正在开始使用 GPGPU OpenCL 我正在使用 java 包装器 jogamp jocl http jogamp org jocl www 希望它能为我提供一种抽象低级细节并在更高级别使用标准 OOP 的方法 我已经从各
  • delphi 使用记录作为 TDictionary 中的键

    可以使用记录作为 TDictionary 中的键值吗 我想根据字符串 整数和整数的组合来查找对象 TUserParKey record App string ID integer Nr integer end var tmpKey TUse
  • 多个 fbAsyncInit?

    在我的网站中 我使用 Facebook JS SDK 的异步加载 为了实际设置它 我在 window fbAsyncInit 函数中使用标准 FB init 然而问题是 在我的网站中 这个功能位于每个页面上 然而 当我在子页面中时 由于网站
  • 如何替换 Android Gradle 构建文件中已弃用的 PackagingOptions

    我已经迁移到 gradle 8 我的 android 构建 gradle 文件显示 plugins id com android application version 8 1 0 alpha01 apply false id com an
  • Scala 与 F# 的问题:它们如何统一 OO 和 FP 范式?

    Scala 和 F 统一 OO 和 FP 范式的方法之间的主要区别是什么 EDIT 每种方法的相对优点和缺点是什么 尽管支持子类型化 如果 F 可以推断函数参数的类型 那么为什么 Scala 不能呢 我看过 F 做过低级教程 所以我对它的了
  • 电子邮件进入收件箱后如何触发 Google Apps 脚本?

    我创建了一个 Google Apps 脚本 用于检查电子邮件是否有附件 然后将其发送到另一个电子邮件地址 它工作正常 但我想创建一个触发器 一旦新电子邮件到达收件箱就启动脚本 我已经能够创建一个每小时启动脚本的触发器 但这不是我想要的 经过
  • 升级到 Xcode 5.1 和 iOS 7.1 后,segue 转换期间导航栏上出现深色阴影

    当我在主 详细信息导航控制器中的父控制器和子控制器之间来回导航时 我在顶部导航栏的右侧看到一个黑色阴影 它是在我升级到 Xcode 5 1 后开始的 感觉很粗糙而且分散注意力 我怎样才能摆脱它 self navigationControll
  • Rails wrap_parameter 未按预期工作

    我正在使用 AngularJS 和 jQuery file uploader 插件 我已经配置了 Rails 来包装我的参数 ActiveSupport on load action controller do wrap parameter