问题标签 [ruby-2.3]

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 投票
1 回答
157 浏览

ruby - Ruby 2.3.4 中的类级别常量被破坏

我有一些可以简化为以下的代码。它适用于 Ruby 2.3.3 并在 2.3.4 上中断。这有点奇怪,我欢迎关于如何重写它的建议以及关于它为什么会中断的解释。

红宝石 2.3.3

红宝石 2.3.4

目标是只初始化TEST一次并且.new是私有的。在方法中记忆@test变量[]不起作用,因为new在创建哈希时是私有的。

编辑

从等式中删除 Forwardable 可以解决问题,但我仍然很好奇为什么以及如何改进它的想法。

红宝石 2.3.3 和 2.3.4

0 投票
2 回答
789 浏览

ruby-on-rails - 运行 Rails 服务器时出错 - 无法加载 gem 'sass-rails'

我是 Rails 新手,第一次尝试加载和配置它。我正在按照http://installrails.com/steps/rails_for_linux_and_other上的说明在 Linux 上安装(我实际上使用的是安装在 Windows 10 主机上的 Ubuntu 虚拟机)。

我不断收到此错误:

似乎没有什么可以告诉我从这里做什么。我实际上已经卸载并重新安装了一次 Rails,因为我认为我的 Rails 版本会产生问题(我确实有Rails 5.1.1),但现在正在发生同样的事情(使用Rails 4.2.6)。

红宝石版本:

宝石清单:

谢谢你的帮助。

0 投票
1 回答
450 浏览

jenkins - 无法解决 Jenkins 中不兼容的字符编码

我正在尝试运行来自 Jenkins 的 Cucumber (Ruby 2.3) 测试套件,用于测试 2-4 字节 UTF-8 字符是否是组的有效名称。

我尝试了许多解决方案,并且一直在寻找几天试图找到与我相关的问题。

一直困扰我的错误是:

这指的是我试图向我正在创建组的机器上的 CLI 发送 ssh 命令的行:

命令中exec!()存在的位置:

该错误仅在我发送 2-4 字节 UTF-8 字符时发生,例如:

组 'abcd'不会导致错误,组 'ЯЯЯ'确实会导致错误

问题:

在我的本地 Ubuntu 机器(Ruby 2.2.1)以及我所在地区的其他机器上运行这个脚本非常好。(这就是为什么我认为没有必要提供比给定更多的代码)。我知道随着跳转到 Ruby 2.0,编码到 UTF-8 发生了变化,但是两台机器都过去了,所以我认为这不是问题。

我已经尝试在 Jenkins 机器上将系统语言环境设置为 en_US.UTF-8 作为语言环境系统变量和 /.bashrc 文件。我在哪里没有看到设置为 ASCII-8BIT 的编码变量。

我还尝试在脚本执行之前从 Jenkins shell 中导出系统语言环境。

我需要一些答案,或者一些可以帮助我解决这个问题的方向。

0 投票
1 回答
1560 浏览

ruby-on-rails-4 - Rails send_file/send_data 发送没有内容的 pdf 文件

我正在使用WickedPdf.new.pdf_from_string. 文件本身生成良好,当保存在磁盘中并打开时。

但是,当通过 发送相同的文件时send_data,浏览器会根据生成的文件下载带有页面的文件,但其中没有任何文本/内容。所有页面都是空白的。这是代码片段

我也试过send_file没有任何成功。

环境变量

0 投票
1 回答
61 浏览

ruby-on-rails - 使用 rails 3.0.5 将 ruby​​ 升级到 2.3.4

我正在尝试使用 ruby​​ 2.3.4 升级我的 rails 3.0.5 应用程序。最初它是 ruby​​ 1.9.3。我能够通过更新 gem 来修复大部分问题。但是,我遇到了一个问题,即在创建新的活动记录对象时,时间不能正确转换。

例如

Product.new(:bought_on => Date.today)将对象保存为bought_on日期,而不是日期时间。

我能够将问题缩小到文件

activerecord-3.0.20/lib/active_record/attribute_methods/time_zone_conversion.rb

由于某种原因,它没有调用这两个函数,define_method_attribute并且define_method_attribute=.

有任何想法吗?

0 投票
1 回答
355 浏览

rubygems - Capybara Webkit 安装

嘿,这一切都是我在 ruby​​ 中的第一个项目,我正在尝试使用此处的说明安装水豚:https ://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit

我不断遇到这个错误。任何帮助表示赞赏。

0 投票
2 回答
194 浏览

ruby-on-rails - Rails 验证、混合消息和 full_messages

在大多数情况下,我发现大多数内置验证器的 Rails 默认错误消息对我来说都很好。但是,我还对某些模型进行了一些验证,其中默认的“{{attribute}} {{message}}” full_message 格式没有任何语义意义。我知道我可以显示消息而不是 full_messages,但这意味着我必须将自己的消息添加到每个内置验证中,否则属性名称将被截断。

有没有办法使用默认的 full_message 格式,但直接覆盖 full_message 以进行少数验证以使用不同的格式或特定的字符串?是否有一种自然的方法可以将默认验证消息与一些不以属性名称开头的自定义消息混合?

0 投票
1 回答
299 浏览

ruby-on-rails - 有什么方法可以重定向(如redirect_to)来自worker的url,rails中的模块?

嗨,我正在处理一些后台作业,我需要从模块或直接从工作人员重定向 URL,但据我所知,只有一种方法,即 redirect_to,但根据 rails MVC 架构,它在模块和工作人员中不可用,但是我需要这样做。

请看下面是我的代码: -

我还包括include ActionController::UrlFor在 Module 和 Worker 中获取 redirect_to 方法,但它再次抛出错误,我无法将控制器方法调用到模块或 worker 中。谁能建议这样做的最佳方法是什么?

0 投票
1 回答
375 浏览

ruby - RVM 无法安装 Ruby 2.3.x

尝试在 Manjaro 4.11.12 上安装 Ruby 2.3.x(在我的情况下为2.3.1 )时,RVM 失败并挂起,但其他操作系统(如 openSUSE)也报告了此问题。

抛出的错误是Error in../../miniruby': corrupted double-linked list,但在某些情况下,RVM 也指向 OpenSSL 或 GCC。

这是我尝试过的:

  • 从 GCC7 降级到 GCC6 甚至 GCC5
  • 使用 rvm pkg install 命令安装 openssl ( rvm pkg install openssl)
  • 进行系统更新

到目前为止没有任何效果。

0 投票
2 回答
52 浏览

ruby - 如何检测 BasicObject 代理?

我正在使用 BasicObject 代理,我需要检测我是否通过了实际对象或这样的代理。问题是诸如is_a?or之类的方法class没有定义

这是我如何使用它的一个例子:

因此以下内容不起作用

如何is_a?为代理定义(或实际识别我正在使用代理)?