问题标签 [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.
ruby - 如何从 Ruby 中的实例方法访问模块?
假设我有一个模块:
模块M
包含在一个类中。
我想从 调用foo
,bar
最终将在 的实例上调用A
。在里面做这个的最好方法是什么bar
?
当然我只能说M.foo
,但那是模块名称的重复,感觉没有必要。
arrays - Ruby:遍历两个哈希数组并创建数组数组
我有两个哈希数组
rtg
带钥匙id, position_id, valid_from, valid_to
inv
带钥匙id, position_id, date
示例如下所示:
我需要创建一个数组数组,其中包含id
对 fromrtg
和inv
hashes where
1)position_id
匹配和
2) date
frominv
是valid_from
& valid_to
from的愤怒rtg
请问我该怎么做?
在我上面的示例中,结果将是:
result = [[7,23],[6,17]]
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 文档相反。)
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:in
require'中救援:/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:in
each' 来自 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:in
each' 来自 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:in
tap' 来自 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:in
require' 来自 script/rails:6:in `'
任何帮助将非常感激!
谢谢!
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多线程有问题吗?
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
如果您能提供帮助,请提前致谢!
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:
如果我应该包括任何其他信息,请告诉我。
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.0
和 Rails 5.1.4
arrays - 如果字符不属于数组,如何指定应该发生匹配?
我无法在我的正则表达式中指定“下一个字符不应来自这组字符”。我有
由于"\t"
不是我的TOKENS
数组的一部分,我认为上面应该匹配,但事实并非如此。如何调整我的正则表达式,特别是这部分
说字符不应该是这个数组的一部分?