问题标签 [ruby-2.4]

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 回答
176 浏览

ruby-on-rails-4 - Rails 包含 has_many,通过子弹 gem 避免 eger 加载 n+1

我的模型是这样的:

第二:

第三:

现在我的查询是:

它通过子弹宝石给出以下消息:

有没有更好的方法可以避免 n+1。提前致谢

0 投票
1 回答
60 浏览

devise - Mysql2::Error: 列 'encrypted_pa​​ssword' 不能为空

Rails 5,ruby 2.4.0 错误:rails while running rails test

我的测试:utilities_controller_test.rb

我的夹具:users.yml

0 投票
1 回答
2574 浏览

html - ActionView::Template::Error: Can't resolve image into URL: undefined method `[]' for nil:NilClass

在运行我的测试用例时使用:Ruby 2.4.0p0 Rails 5.2.3:有和错误:

我的测试用例是这样的:

结尾

错误:

但是手动打开 ui 时图像会正确加载。你能建议什么是错的。在视图中有 image_tag 在第 43 行。

0 投票
1 回答
1364 浏览

ruby-on-rails-5 - Selenium::WebDriver::Error::WebDriverError: 无法找到 chromedriver。请从以下地址下载服务器

使用 ruby​​ 2.4.0p0 , Rails 5.2.3

为 Rails 应用程序运行系统测试用例时出错:

我的系统测试如下:

请提出可能的出路。
运行系统测试的命令:

0 投票
1 回答
151 浏览

ruby-on-rails - 在 Rails 中分叉独角兽进程时单例消失

我有一个运行 ruby​​ 2.4.4 的 Rails 应用程序,使用 Unicorn 作为 Web 服务器,它使用单例在后台线程中从 Kafka 读取。这个想法是每个独角兽进程都有一个单例实例。所以 4 个进程,4 个单例。

after_fork我在我的独角兽配置中启动了钩子内的卡夫卡消费。我可以成功等待历史消息的消费完成(通过立即进行撬动来验证)。

但是,当我到达服务流量的地步时,单例实例是 a) 一个不同的实例,并且 b) 为空 - 先前设置的 ivar 已消失。

我已经确认我在同一个进程和同一个线程中。

设置如下:

我确认我在同一个进程中,甚至在同一个线程中,因为我可以通过替换include Singleton自定义实现和线程局部变量成功地将正确的对象传递给应用程序,如下所示:

在这个实现中,当我从我的应用程序提供流量时,BackgroundFooConsumer.instance是在钩子中创建的正确实例after_fork,并且每个独角兽进程都有一个独立的实例,通过检查对象 ID 来确认。

我不相信这是 GC,至少底层对象没有被清除,我已经通过在 after_fork 钩子中设置 Thread 局部变量来确认这一点,然后include Singleton在我的消费者类中使用。我仍然得到空/新单例,但是如果我直接查询它,线程局部变量仍然存在。

我目前的假设是,这与写入时复制有关,通过设置线程局部变量,我以某种方式强制 ruby​​ 仅为该进程创建一个单例并将其保存到该变量中。

所以我的问题是单例实例如何在单个线程中像这样消失?我怎样才能阻止它发生?如果可以的话,我宁愿不使用这些线程局部变量。

0 投票
0 回答
371 浏览

webpack - 未捕获的类型错误:$(...).modal 不是 rails 6 中的函数

在rails 6中出现此错误,在rails 5中,将应用程序更新到rails 6(包括webpack)后很容易解决此错误,每次我尝试关闭js.erb文件中的模型时都会出现此错误。

我的文件:pack/application.rb

文件包/src/application.scss

文件配置/webpack/environment.js

0 投票
2 回答
54 浏览

ruby - 如何从多次出现的哈希中删除嵌套值

我有一个哈希,也就是说,

这个哈希是通过另一个函数传递的。如何从 "within"=>["FID6", "S5"] 中删除具有模式 FID(在本例中为 FID6)的值,而不会很好地改变原始哈希值?这只是哈希的缩短版本,但在其他情况下哈希超长并且“内部”键值对出现多次。注意:这个程序使用的是 ruby​​ 2.4

有人要求我澄清这个问题与我之前提出的问题有何不同,所以这是一个更清楚的说明,因为从那以后我已经做了更多的工作。这个特定的键值对 "within"=>["FID6", "S2"] 现在看起来嵌套很深(整个哈希大约有 2 页长,因此我没有复制和粘贴它)。我无法拆分“存储库”所在的哈希,因为它嵌套在其他键值中。我现在要问的是,有没有一种方法可以在键值内匹配它,无论它现在很深。谢谢大家的建议。

0 投票
1 回答
20 浏览

rspec-rails - Guard 不执行 capybara 测试的规范/功能

我的保护文件被编辑以执行在规范/功能中编写的测试用例,因此如果控制器或模型内部有任何更改,它将执行所有规范/功能测试:

添加了所需的gemfiles

我的文件如下:

但是在运行警卫时,它不会检测到任何书面测试用例并给出结果:

0 投票
1 回答
141 浏览

ruby - Ruby on rails,如何从日语单词中删除空格?

我正在尝试从日语单词中删除空格。

0 投票
1 回答
105 浏览

ruby - 我可以在 Ruby 3 中使用 Ruby 2.4 代码而不会出现任何错误吗?

我想知道是否可以在 ruby​​ 3 中使用基于 ruby​​ 2.4 的代码(如在程序、方法、语法和函数名称中)。我想慢慢迁移到 Ruby 3,但我想知道一切是否稳定。

我需要下载一些软件包以使其稳定吗?Ruby 3 是否向后兼容(我听说它们不如快速创新者那么多,比方说,与 Python 相比,python 向后兼容所有 3.x 版本,但不是那么大的创新者)?

我应该仔细阅读我编写的所有内容以使其兼容吗?

有点切题,但我是否有必要迁移到 Ruby 3?我认为 Ruby 2.4 现在已经有足够的特性和更新让我继续使用它,如果我不升级一个版本,我总是可以使用 Ruby 2.7。

谢谢!