问题标签 [ruby-2.7]

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

ruby-on-rails - .旋转!在 before_create 方法中抛出 NoMethodError,但 .rotate 没有

在我的模型中,我有:

我得到一个 NoMethodError 说.rotate!是未定义的。没有爆炸的普通旧版.rotate工作正常,但我希望将结果保存在原始数组中。

目标是让这个“中性”帖子选项出现在列表的最后。我可以.rotate在视图中调用数组,但这似乎是不必要的重复工作,我可能应该只更改原始数组,对吧?有什么建议吗?

运行红宝石 2.7.0p0

0 投票
5 回答
4050 浏览

ruby-on-rails - 安装 ruby​​-2.7.1 时遇到问题

我在安装最新的 ruby​​ 版本 2.7.1 时遇到问题

当我尝试运行命令时rvm install 2.7.1

当我尝试运行 sudo apt-get update 时。它也没有帮助

我尝试按照提到的方式检查日志

我现在有点困惑,为了解决这个问题需要做些什么

0 投票
2 回答
470 浏览

ruby - Rails 4, Ruby 2.7.1 schema.rb 显示“Could not dump table because of following FrozenError”

升级到 Ruby 2.7.1 后,我的 schema.rb 出现了多个表的以下警告:

我已经到处寻找解决方案,并检查了(尽我所能)迁移,其中有很多。在这个阶段降级 Ruby 不是一种选择。

有人遇到类似情况并设法解决了吗?

0 投票
2 回答
1533 浏览

rspec - 将 ruby​​ 更新到 2.7.1 后,rspec 测试抛出错误`Bundler::GemfileError for status code 4 but Bundler::GemfileError is already registered`

  • 使用 Rails 5.2.4.3
  • Mac OSX Catalina 10.15.6

将 ruby​​ 更新到 2.7.1(通过 rvm)后运行rspec spec并收到错误:

  • 切换到全局 gemset 解决了这个问题,但使用默认 gemset 继续抛出错误。
  • 卸载并重新安装 bundler 并没有解决问题(确保 bundler v 2.1.4)
  • 我可以使用运行bundle exec rspec spec(但想实际解决问题)
0 投票
0 回答
124 浏览

ruby-on-rails - Heroku 在运行 `bundle install` 时使用较旧的 Ruby 版本

我正在尝试在 Heroku 上的 Ruby 2.7.1 上运行 Rails 应用程序。一切正常,然后我在 Gemfile 中更改了一些内容以使用Ruby 2.7 的编号参数,现在部署失败并显示以下错误消息:

它在本地运行良好,我一直在其他几个 Rails 应用程序中使用相同的代码,部署从来都不是问题。

由于该错误Undefined local variable or method '_1' for Gemfile.,我假设运行时使用了 < 2.7 的 Ruby 版本bundle install。该应用程序本身在 Ruby 2.7.1 上运行良好:

这里还有一些其他类似的问题,但它们都处理 Heroku 不尊重 Gemfile 或 .ruby-version 中设置的 Ruby 版本,这对我来说不是问题,只是在bundle install它似乎使用不同的 Ruby 版本一些原因...

有没有办法进一步调试,或者即使在bundle install部署期间也强制使用 Ruby 2.7?

0 投票
2 回答
184 浏览

rubygems - 如何使用 webpack 在 Rails 6 中使用第三方 js?

在 rails 项目中使用 ruby​​ 2.7.1p83 和 Rails 6.0.3.2。

在 rails 应用程序 webpack 中导入了 huebee。

分别在 application.js 和 application.css 文件中导入其 css 和 js 文件:

现在,如果

在此处输入图像描述

工作正常并显示颜色选择器的 drow 框:

但是当我在 js 中初始化 Huebee 对象时,它给出的错误是:

在此处输入图像描述 在此处输入图像描述

未捕获的 ReferenceError:未定义 Huebee

请提前建议解决此问题的正确方法。

我的 user.js 文件,其中 Huebee 被导入为:

用户.scss 文件:

用于初始化的 Huebee 脚本:

这会产生以下错误: 在此处输入图像描述

0 投票
1 回答
59 浏览

ruby - 代码在 Ruby 2.7 中运行良好,但在 Ruby 2.6.3 中不行

我在 Ruby 2.7 中编写了一个具有装饰器功能的代码。它在该版本中运行良好,但相同的代码在 Ruby 2.6 中无法正常运行。如果我删除对装饰器的调用,即,wrapper_function代码在 Ruby 2.6 中执行,但这不是我想要的功能。那么我的错误是什么,我该如何纠正呢?

已编辑

#test.rb

以上是显示问题的完整文件: 运行它:ruby test.rb 如果版本是2.7.1,则代码执行没有错误。如果是 2.6.3,那么我会收到此错误: test.rb:54:in add_member: wrong number of arguments (given 5, expected 4) (ArgumentError)

在行wrapper_function2325如果我删除**kwargs,则执行程序并在 version 中给出所需的结果2.6.3。那么为什么会这样呢?

0 投票
1 回答
302 浏览

ruby - nil.to_s 产生一个冻结的字符串?

我很好奇。下面的代码片段会产生一个令人惊讶的结果FrozenError吗?魔术评论# frozen_string_literal: true不存在。

0 投票
1 回答
196 浏览

ruby-on-rails - 运行 srb rbi hidden-definitions 给出不明确的错误

语境

  • 我们的团队最近升级到 rails 6(从 5.2)。AFAIK,到目前为止,事情进展顺利。
  • 我们有一个非常规的文件结构,所以我们选择使用:classicrails loader 而不是:zeitwerk

问题

每当我们srb rbi hidden-definitions现在运行时,我们都会得到以下信息:

reflect.json.err(错误指向)充满了无数错误,看起来像这样:

问题

关于如何前进的任何建议?一个预感是我们需要迁移到:zeitwerk以解决这个问题,但这对我们来说是一个相当大的重构,所以我在没有确认这是导致此失败的潜在原因的情况下犹豫是否要探索这个问题。

0 投票
2 回答
591 浏览

ruby - Beginnless 日期范围不允许包含?

ruby 2.7 引入了无始范围。现在你可以拥有:

使用整数,.include?按预期工作:

但是,这同样不适用于日期范围:

有趣的是,它反过来工作:

最后:

这是一种很奇怪的行为。所有 3 个案例都带来了不同的结果,其中只有 1 个实际按预期工作。

我的意思是,我想如果我们有一个具有某种“连续”逻辑的范围是可以理解的,它可能很难检查是否包含。但是像 Date 这样相对简单的类至少应该可以工作。无论如何,日期几乎就像一个整数。甚至 Float 也可以做到这一点,所以我不明白为什么 Date 或 DateTime 不应该。

我的用例是数据库可能会为我正在查询的 2 个日期提供 nil 。这些是我想在一个范围内使用的开始日期和结束日期,但我不能确定其中一个可能不是 nil,这对我的逻辑来说很好,但这会导致一个无开始的范围,这可以不处理.include?

我可以通过一些手动的丑陋检查轻松地使我的用例工作,但这不是优雅的 ruby​​ 方式。我在这里错过了什么吗?或者这应该是一个尚不存在的功能?