“属性应该是哈希值,但实际上是字符串”

2024-03-14

我在 Rails 3 应用程序中保存哈希时遇到问题。使用控制台时我可以保存它,只是当我通过表单提交哈希时它不起作用。

这个问题解决了 https://stackoverflow.com/questions/10345054/how-to-edit-a-serialized-hash-column-in-form-textarea但该解决方案对我不起作用。此外,如果我使用:

 serialize :bulk_action, Hash

我收到错误:

 Attribute was supposed to be a Hash, but was a String

通过表单保存时的哈希值如下所示:

 "{\"location\"=>{\"commands\"=>{\"custom_command_one\"=>\"true\", \"custom_command_two\"=>\"true\"}}}"

然而,通过控制台:

{"location"=>{"commands"=>{"custom_command_one"=>"true", "custom_command_two"=>"true"}}}

我的数据库字段是一个文本字段。通过表单保存哈希值的最佳方法是什么?

- 编辑 -

我发现如果我使用符号而不是字符串作为名称,我可以解决这个问题,但它仍然输出一个长字符串,而不是哈希值。


您能否在文本区域内切换到 JSON,以便解析它不会那么危险。因为您需要做的是评估控制器或模型中的相应参数条目,使用户能够对运行您的应用程序的用户执行任何他们想要的操作。对于 JSON,您可以使用JSON.parse在设置模型属性之前。

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

“属性应该是哈希值,但实际上是字符串” 的相关文章

  • 将表单作为本地表单传递给 Rails 5 中渲染的部分 ajax

    我已经查遍了 找不到有效的解决方案 相关控制器 profits controller rb def new tabs market Market order mjsnumber all first profit Profit new pro
  • CORS 与 Amazon S3 和 Cloudfront

    我有一个托管在 Heroku 上的 Rails 应用程序 它使用 CloudFront 以及托管在 S3 上的资产 它完美地显示了资产 尽管需要一些努力 我的 Cloudfront 设置 Forward Headers Whitelist
  • Rails:如何测试 lib/ 目录中的代码?

    我有一个从解析器对象获取数据的模型 我认为解析器类应该位于 lib 目录中 尽管我可以说服它应该位于其他地方 问题是 解析器类的单元测试应该在哪里 如何确保每次运行 rake 测试时都运行它们 在我正在开发的 Rails 应用程序中 我决定
  • 在 Ruby 中创建 Microsoft Word (.docx) 文档

    有没有一种简单的方法可以在 Ruby 应用程序中创建 Word 文档 docx 实际上 就我而言 它是一个由 Linux 服务器提供服务的 Rails 应用程序 类似的宝石Prawn http prawn majesticseacreatu
  • 授予 Rails 应用 API 访问权限的最佳身份验证方法

    我想为我的网络应用程序提供经过身份验证的 API 访问 此类服务的消费者通常是其他网站 服务 验证这些用户身份的最佳方法是什么 OAuth openID http 身份验证 正如我们的工作一样 哪个最好 的答案是这样的 是 这取决于 HTT
  • 黄瓜和 Rspec

    任何人都可以向我推荐黄瓜和 rspec 教程 rails 3 的好来源 简单示例 吗 Edit 实际上我正在寻找带有很好示例的免费在线资源 我觉得R规格书 http www pragprog com titles achbd the rsp
  • 使用 sidekiq 只执行众多重复作业之一?

    我有一个后台作业 在 MongoDB 上执行映射 归约作业 当用户向文档发送更多数据时 它会启动在文档上运行的后台作业 如果用户发送多个请求 它将启动同一文档的多个后台作业 但实际上只有一个需要运行 有没有办法可以防止多个重复实例 我正在考
  • 机架 1.3.2 的问题。您已经激活了机架 1.3.2,但您的 Gemfile 需要机架 1.2.3

    我在 Debian 上有 Passenger 3 0 9 带有 Gem Rack 1 3 2 和 1 2 1 使用带有乘客 e 捆绑器的 Rails 3 0 应用程序 我遇到以下错误 您已经激活了机架 1 3 2 但您的 Gemfile 需
  • has_many 关系的动态 class_name

    我正在尝试与动态 class name 属性建立 has many 关系 class Category lt ActiveRecord Base has many ads class name gt lambda return self i
  • Capistrano 杀死资产:预编译

    我正在尝试部署我的应用程序 但我不断收到 err xxx xxx xx xxx bash line 1 9953 Killed bundle exec rake RAILS ENV production RAILS GROUPS asset
  • Bundler 似乎无法通过 Rbenv 找到正确的 Ruby

    多年来我一直使用 RVM 作为 Ruby 版本管理器 但由于其简单性 我想改用 rbenv 但是我在部署时发现了一些奇怪的问题 这似乎是错误的地方 env RBENV ROOT home deploy rbenv PATH home dep
  • Rails 3 公司帐户具有许多用户,限制对数据的访问

    我想知道在我的应用程序中构建身份验证 授权的最佳方法 我希望有 许多公司帐户 可能使用子域 帐户有很多用户 用户只能访问自己或具有相同帐户的其他用户创建的记录 我所做的研究提供了许多混合搭配的想法 以奇怪而美妙的方式组合 devise ca
  • :confirm 在使用 Rails 3 和 jQuery UJS 时忽略 Rails 中的选项

    我的 Rails 应用程序中有一个项目表 每个项目都有一个删除链接 如下所示 但是 即使用户单击对话框上的 取消 也会发送删除请求 有想法该怎么解决这个吗 我正在使用 Rails 3 Beta 3 以及 jQuery 库和随附的 jQuer
  • Rails 模型中的多个 counter_cache

    我正在学习 Rails 遇到了一个小问题 我正在编写带有任务列表的非常简单的应用程序 因此模型看起来像这样 class List lt ActiveRecord Base has many tasks has many undone tas
  • Rails:从视图内渲染视图(不是部分视图)

    我有一个对两者都有响应的控制器html and js The htmlview 渲染整个页面 包括页眉和页脚 而js仅替换 main 除了页眉和页脚之外 两种格式呈现相同的内容 我可以用三个文件获得这种效果 show html erb di
  • 重新归档 simple_form 未定义方法 Attachment_field

    I am trying to hook up refile to my view and I am getting the following error 这是我的模型 class Job lt ActiveRecord Base acts
  • 使用 shoulda 重构 Rails 模型上的 rspec 测试

    了解后应该匹配器 https github com thoughtbot shoulda matchers通过回答关于属性可访问性测试的另一个 StackOverflow 问题 https stackoverflow com a 11849
  • RSpec 抛出分段错误

    有时我的测试套件会无缘无故地抛出分段错误 这是输出 Users Test rvm gems ruby 1 9 3 p392 gems activerecord 3 2 9 lib active record relation query m
  • 为什么 Java 中的 hashCode() 可以对不同对象返回相同的值?

    引用我正在读的书中的一段话首先Java http www amazon co uk Head First Java Kathy Sierra dp 0596009208 关键是 哈希码可以相同 但不一定保证对象相等 因为使用的 哈希算法 h
  • Rails 建模:将 HABTM 转换为 has_many :through

    我正在现有的 Rails 站点上进行维护工作 并且遇到了一些由多对多关联引起的问题 看起来该网站最初是使用has and belongs to many对于一些业务逻辑变得更加复杂的关系 所以我需要使用has many through而是支

随机推荐

  • Android Studio 中外部剥离共享库的本机调试

    我已经剥离和未剥离共享库 如何在使用 LLDB 在 Android Studio 中调试剥离时加载符号 我可以成功调试位于 jniLibs 文件夹中的完整未剥离的 so 但它太大了 部署时间太长 在调试配置中指定符号目录不适用于标准和实验性
  • 在android中实现Socket.io的最佳方式

    我计划通过以下方式在 android 中实现 Socket iothis https github com socketio socket io 基于聊天的应用程序的库 据我了解 图书馆似乎相当不错 我想知道如何维护single整个应用程序
  • 新的 PendingIntent 更新当前意图

    我试图在一段时间间隔后显示不同的通知 但发生的情况是它更新了当前的通知PendingIntent结果 即使我触发 4 5 个待处理的意图请求 我也只能收到一个通知 单击按钮后我会执行以下操作 try adapter OpenDB int i
  • 反复出现的成本难题

    我经常发现自己必须定义一个函数的两个版本 以便拥有一个 const 版本和一个非常量版本 通常是 getter 但并非总是如此 两者的区别仅在于 其中一个的输入和输出是常量 而另一个的输入和输出是非常量 该功能的核心 真正的工作 是相同的
  • 跨线程共享具有特征对象的结构作为属性

    我有下面的代码 有了注释掉的部分 它就可以工作了 当我取消注释这些部分时 它不再编译 如何调整注释部分以使它们工作 即我想让线程同时访问表达式树 当我尝试时 编译器会开始出现有关线程安全的错误 我阅读了 Rust 书籍并了解 C C 但还不
  • 如何在scrapy中获取原始start_url(重定向之前)

    我正在使用 Scrapy 来抓取一些页面 我从 Excel 工作表中获取 start urls 并且需要将 url 保存在项目中 class abc Spider BaseSpider name abc allowed domains ab
  • 如果用户登录,Angular 6 会更改组件

    使用基于 JWT 的实现和 Angular 6 根据用户是否登录隐藏 显示组件的最佳方法是什么 如果有一个包含用户相关信息的 Observable 用户对象就好了 这个需要守卫吗 后端使用 NET Core 2 1 不确定这是否有什么区别
  • 使用实体框架将自定义字符串作为主键

    我正在尝试使用 Code First 实体框架将个性化字符串设置为主键 我有一个助手 它的函数返回一个 n 个字符的随机字符串 我想用它来定义我的 Id 就像 YouTube 视频代码一样 using System Security Cry
  • 调用失败,参数为空

    我有以下代码 public static ContactEventValue GetContactEventValue ContactEventType contactEventType string programCode string
  • CMake:管理源文件列表

    我目前遇到的问题是 我只是希望通过抓取所有内容并删除一些我不需要的零碎内容来管理我的源文件列表 我希望 Cmake 为此提供很好的内置工具 所以我可能会从以下开始 file GLOB A Application cpp 我觉得我想创建另一个
  • 当 SASS 重新编译 CSS 时,Chrome 的“自动重新加载生成的 CSS”不会重新加载页面

    当我保存监视的 SCSS 文件时 我试图让 Chrome 的 DevTools 自动重新加载页面 该文件将编译并对 CSS 文件进行更改 I have the Auto reload generated CSS option checked
  • 将 List[Tuple2[A,B]] 转换为 Tuple2[Seq[A],Seq[B]]

    卡在这里 尝试将案例类元组列表转换为序列元组并对结果进行多重分配 val items repo foo list gives me a List A B 我可以像这样完成多项任务 val a b items map 1 toSeq item
  • Shopify API 订单查询参数的时区

    The Shopify 订单 API http api shopify com order html允许指定基于日期的查询参数 例如created at min 我想知道这些日期预计在哪个时区 如果您不提供时区 Shopify 将采用 UT
  • 使用 QOffscreenSurface 进行离屏渲染 - QPainter Alpha 笔颜色失败

    我努力了这个方法 https stackoverflow com questions 31323749 easiest way for offscreen rendering with qopenglwidget 的回答尼基塔 费多尼特 h
  • 哦,我的 zsh 显示出奇怪的字符“?”在终端上

    我已经安装了 iTerm2 和 Oh my zsh 然而 自从我将 ZSH THEME 更改为 agnoster 后 出现了一个奇怪的问号 附上相同的屏幕截图 我认为电力线会有所帮助 但似乎并没有发生 谁能帮我解决这个问题吗 这已经解决了这
  • 如何在 Laravel 5.6 的默认注册表单中添加自定义字段?

    在我的一个拉拉维尔 5 6应用程序中 我需要在默认注册表单中添加更多字段 所以我只在默认注册表单中添加了一个字段来测试 phone no 注册 blade php 并且还添加phone no 注册控制器 但是当我单击注册按钮时 它显示以下错
  • 执行 Mariadb 更新语句时出错

    我正在使用以下更新语句来更新数据库表中的行 update department set budget budget 0 01 where dept name Physics 但是 运行此代码会出现以下错误 ERROR 1305 42000
  • 将 n 位的 std_logic_vector 向右或向左移位

    我有一个向量signal tmp std logic vector 15 downto 0 我必须将它向左或向右移动 n 位 我怎样才能实现这个操作 我想到了串联操作 但我不知道如何使用它 Use the ieee numeric std库
  • 使用 D3 获取实时数据

    我想知道是否可以使用 D3 库来处理我的服务器通过 websockets 发送的实时数据 我看不到任何证明这一点的文档或示例 我最初的期望是通过以下代码示例来做到这一点 ws new WebSocket ws localhost 8888
  • “属性应该是哈希值,但实际上是字符串”

    我在 Rails 3 应用程序中保存哈希时遇到问题 使用控制台时我可以保存它 只是当我通过表单提交哈希时它不起作用 这个问题解决了 https stackoverflow com questions 10345054 how to edit