问题标签 [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 投票
3 回答
95 浏览

ruby - 如何从 Ruby 中的实例方法访问模块?

假设我有一个模块:

模块M包含在一个类中。

我想从 调用foobar最终将在 的实例上调用A。在里面做这个的最好方法是什么bar

当然我只能说M.foo,但那是模块名称的重复,感觉没有必要。

0 投票
2 回答
266 浏览

arrays - Ruby:遍历两个哈希数组并创建数组数组

我有两个哈希数组

  1. rtg带钥匙id, position_id, valid_from, valid_to
  2. inv带钥匙id, position_id, date

示例如下所示:

我需要创建一个数组数组,其中包含id对 fromrtginvhashes where

1)position_id匹配和

2) datefrominvvalid_from& valid_tofrom的愤怒rtg

请问我该怎么做?

在我上面的示例中,结果将是: result = [[7,23],[6,17]]

0 投票
0 回答
1524 浏览

ruby - NoMethodError:未定义的方法“delete_prefix”字符串类(Ruby 2.4.1)

我正在使用最新的 Ruby(版本 2.4.1)

我看到https://ruby-doc.org/core-2.4.1/String.html#method-i-delete_prefixString#delete_prefix中定义 了一种方法

但是在 中irb,由于某种原因,此方法不存在:

这里发生了什么?!

(以上可以通过 实现c.gsub(/^_/, ''),但我想知道为什么delete_prefix并且delete_suffix不存在与 Ruby 文档相反。)

0 投票
1 回答
687 浏览

c - Ruby 的 max 函数顺序如何重复?

我一直在研究Ruby 的mixin (v2.4.1)中的max 方法。Enumerable

这是一种相当简单的方法,但是当存在重复项时它如何排序项目有点令人困惑。

例如:

如何7选择第二项?为什么取三个值时根本不选择它?

如果您取更多的数字,则排序不一致(尽管集合中的项目)。

看了一眼源码,好像是在做正常的对比;从该代码中看不到这里看到的顺序。

谁能解释这个排序是如何实现的?我知道上面的排序都是“有效的”,但是它们是如何生成的呢?

0 投票
1 回答
53 浏览

ruby-on-rails - Ruby on Rails - 输入 rails_s 后

我正在学习 Ruby on Rails,但仍然不熟悉该语言的某些部分。

我正在尝试在 Firefox 上显示一个 rails 项目,但是一旦我输入命令“rails s”,就会出现以下错误: Rails S 错误 源代码是:

C:\Sites\weeks_1_-_15\week_1\bookshop1a>rails s C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/activesupport-4.0.2/lib/active_support/values/time_zone .rb:282:警告:循环参数参考 - 现在 C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/sqlite3-1.3.10-x86-mingw32/lib/sqlite3.rb:6 :require': cannot load such file -- sqlite3/sqlite3_native ( LoadError) from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/sqlite3-1.3.10 -x86-mingw32/lib/sqlite3.rb:6:in从 C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/sqlite3-1.3.10 -x86-mingw32/lib/sqlite3.rb:2:in <top (required)>' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler/runtime.rb:91:inrequire'中救援:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler/runtime.rb:91:in block (2 levels) in require' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler/runtime.rb:86:ineach' 来自 C:/RailsInstaller/Ruby2.2.0/lib /ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler/runtime.rb:86:in block in require' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler/runtime.rb:75:ineach' 来自 C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/ gems/bundler-1.13.6 /lib/bundler/runtime.rb:75:在require' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/bundler-1.13.6 /lib/bundler.rb:106:in需要'来自 C:/Sites/weeks_1_-_15/week_1/bookshop1a/config/application.rb:7:in <top (required)>' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/railties-4.0.2 /lib/rails/commands.rb:74:in需要'来自 C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/railties -4.0.2 /lib/rails/commands.rb:74:in block in <top (required)>' from C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/railties-4.0.2 /lib/rails/commands.rb:71:intap' 来自 C:/RailsInstaller/Ruby2.2.0/lib/ruby/gems/2.2.0/gems/railties-4.0.2 /lib/rails/ commands.rb:71:in <top (required)>' from script/rails:6:inrequire' 来自 script/rails:6:in `'

任何帮助将非常感激!

谢谢!

0 投票
2 回答
1566 浏览

ruby-on-rails - 为什么 update_attributes 不更新属性,但 update 呢?

Rails 版本: Rails 5.1.1

红宝石版本: ruby-2.4.0 [x86_64]

本地服务器:

我有一个名为的现有模型User,后来我添加了属性last_name

然后,尝试用其他字段更新新创建的字段(last_name),我使用了:

对于,这会update_attributes更新first_name不会last_name更新属性:

导轨日志:

然后我尝试了:

这些方法first_name last_name预期更新。

导轨日志:

知道发生了什么吗?

添加一些观察

一个。它会随机更新,例如 10 次或 15 次更新一次。

湾。puma多线程有问题吗?

0 投票
1 回答
706 浏览

macos - LoadError:不兼容的库版本:bindex/cruby

Ruby v2.4.1 - Rails v5.0.6

运行后rake db:migrate,这是我得到的错误:
LoadError: incompatible library version .. /.rvm/gems/ruby-2.4.1/gems/bindex-0.5.0/lib/bindex/cruby.bundle

如果您能提供帮助,请提前致谢!

0 投票
1 回答
333 浏览

twitter-bootstrap - 合并 Bootstrap 后不显示设计错误消息

我意识到这个问题,或类似的问题,以前曾被问过,但我发现的提议的解决方案都没有对我有用。

因此,我正在使用 Devise 身份验证 gem 构建一个网站,并且最近尝试将 Bootstrap 用于样式设置。我得到了它的工作,但设计错误消息不再显示在注册页面上(即,告诉用户某些字段不能为空的消息等)。

(我不确定是 Bootstrap 的合并造成了破坏,但它确实发生在该提交的某个地方。)

另外值得注意的是,当注册失败时,用户被重定向到的页面 URL 从“ https://my-site-wanderspeak.c9users.io/users ”更改为这个怪物:“ https://my-site-wanderspeak .c9users.io/users/sign_up?utf8=%E2%9C%93&authenticity_token=QI2XnYtJnm2VdWbff%2B1HGCHQ21r1aQR7li%2FemTWJni3sP0vl7f%2FIyRDdXVf1iAdRsGpK63skwc6UqUEXFvK2Gg%3D%3D&user%5Bfirstname%5D=&user%5Blastname%5D=&user%5Bdob%282i%29%5D= 11&user%5Bdob%283i%29%5D=5&user%5Bdob%281i%29%5D=2017&user%5Bphone%5D=&user%5Bemail%5D=&user%5Bpassword%5D=&user%5Bpassword_confirmation%5D= "。两者都是相同的注册页面,但第一个包含错误消息。

我的观点:

</body>(由于某种原因 ,结束标签没有出现。)

我的 application.html.erb:

我的(编辑过的)devise_helper.rb:

如果我应该包括任何其他信息,请告诉我。

0 投票
1 回答
178 浏览

ruby-on-rails - 在 Rails 5 中使用 FacebookOmniauth

我正在尝试实施 Facebook 身份验证,但我被卡住了。我完全按照本指南

https://www.crondose.com/2016/12/guide-integrating-omniauth-rails-5-facebook-login-feature/

并得到这个错误

我,[2017-11-07T00:55:47.114884 #12099] 信息——omniauth:(facebook)回调阶段已启动。E,[2017-11-07T00:55:47.489634 #12099] 错误 --omniauth: (facebook) 身份验证失败!invalid_credentials: OAuth2::Error, :

脸书 API 版本v2.10

我正在使用ruby 2.4.0Rails 5.1.4

0 投票
2 回答
38 浏览

arrays - 如果字符不属于数组,如何指定应该发生匹配?

我无法在我的正则表达式中指定“下一个字符不应来自这组字符”。我有

由于"\t"不是我的TOKENS数组的一部分,我认为上面应该匹配,但事实并非如此。如何调整我的正则表达式,特别是这部分

说字符不应该是这个数组的一部分?