问题标签 [openstruct]

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 投票
0 回答
537 浏览

ruby-on-rails - 如何将字符串转换为openstruct

我有一个字符串,它是一个 openstruct 对象。如何将其再次转换为 openstruct?

这是一个字符串,如何再次将其转换为 openstruct 对象,以便我可以访问该值

0 投票
1 回答
165 浏览

ruby-on-rails - 将 Gmail 连接传递给 sidekiq

我想将一个对象传递给 sidekiq,它是一个 gmail 客户端对象,我不想在 perform 方法中创建该对象,所以我要传递它并以字符串格式传递,我正在借助 open struct通过它,但它以字符串格式进行。

0 投票
1 回答
521 浏览

ruby - 如何使用条件更新 OpenStruct 值

如何更新OpenStruct满足条件时的值?我是这样想的:

但是这段代码不起作用。

我可以通过此代码进行更新,但很难阅读。

有没有更好的方法来OpenStruct按条件更新值?

0 投票
1 回答
671 浏览

ruby-on-rails - Ruby 2.3.1 的 OpenStruct 问题

在 Ruby 2.1.5 和 2.2.4 中,创建一个新的 Collector 会返回正确的结果。

当我升级到 Ruby 2.3.1 时,它开始返回 nil。

我已经阅读了很多关于 OpenStruct 现在如何在 2.3 中快 10 倍的阅读,但我没有看到所做的更改会破坏收集器和响应之间的关系。非常感谢任何帮助。Rails 的版本为 4.2.7.1。

0 投票
0 回答
58 浏览

ruby - 如何从哈希返回数据的随机采样

我已经将一个 json 文件(由一个名为“items”的包含 4 个键值对的单个数组组成)解析为一个 OpenStruct,以便我可以将我的数据视为对象。我现在想在网页上随机显示每个对象。

我的 json 基本上是这样的:

最后在我的 Sinatra 路线中,我得到了:

在我的 erb 页面中,我正在使用<%= @random %>并得到一个简单#的结果。为什么?我的意思是,我知道这是因为我没有告诉它显示任何一个特定键的值。但是我该如何解决呢?

另一件事-我觉得我正在尝试做的事情的方式(即创建一个小游戏,要求您从两个随机选项中选择更昂贵的一个)-从根本上是错误的。

0 投票
1 回答
181 浏览

ruby - openstruct上的全能getter方法?

如果我有一个 OpenStruct:

我可以覆盖[]在某些情况下有效的

但是[]使用点方法语法时不会调用此方法:

我正在尝试创建一个继承自 OpenStruct 并且更像 Javascript 对象的类(基本上我试图消除在call存储为值的 proc 上运行的必要性)

0 投票
1 回答
3426 浏览

json - Ruby 使用 OpenStruct 解析 json 数组

我正在尝试使用 OpenStruct 解析一个 json 文件。Json 文件有一个技能数组。当我解析它时,我会返回一些额外的“垃圾”。我该如何摆脱它?

json

0 投票
1 回答
576 浏览

ruby - 定义与实例方法同名的 OpenStruct 属性

我在尝试创建具有与 OpenStruct 实例方法之一同名的属性的开放结构时遇到了问题。具体来说,我想创建一个具有属性的开放结构capture。我在 rspec 测试中使用它作为存根,所以我不能更改方法的名称(它必须是capture

查看 OpenStruct 方法,它有一个方法capture,并且正是这个方法被调用。有没有办法用与其方法之一同名的属性来实例化一个开放结构?

为清楚起见,我特别需要方法捕获,我已经确认在 rails 4.0.x 但不是 rails 5 上有中断,但这种情况适用于 openstruct 可能具有的任何方法。

0 投票
1 回答
41 浏览

ruby-on-rails - Rails 4 在初始化后覆盖 ActiveRecord 模型变量

我在模型中将较大的 JSON 字符串存储为文本字段,但希望在初始化模型实例时将数据作为 OpenStruct 变量进行访问。

换句话说:

当我跑步时,crawl = CrawlCache.find(x)我希望 crawl.results 不是字符串,而是结果JSON.parse(crawl.result, object_class: OpenStruct)

到目前为止,我的代码是这样的:

但是,当我运行上述crawl = CrawlCache.find(x)crawl.results.class仍然是一个字符串。

我想覆盖原始文件的原因是出于内存原因,字符串相当大,我不希望将字符串和解析的对象放在内存中。这就是为什么我不走这attr_accessor条路线并将其命名为别的。

0 投票
1 回答
1779 浏览

ruby - 构造嵌套的 OpenStruct 对象

我必须模仿 Google API 响应并创建一个可通过以下方式遍历的 2 级深度数据结构.

鲍勃

有没有比这更聪明/更好的方法: