问题标签 [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.
ruby - 当字符串默认不可变时,如何描述可变字符串?
当文件具有编译指示时:
默认情况下,该文件中以文字形式写入的所有字符串都被冻结。当我希望我的字符串总体上是不可变的,因此正在使用编译指示,但想要有几个可变字符串时,推荐的编写方式是什么?
我能想到的只有:
ruby - nil 的安全导航运算符 (&.)
由于 Ruby 2.3 引入了安全导航操作符(&.
),也就是孤独操作符,nil
对象上的行为看起来很奇怪。
这是设计成这样吗?还是在添加孤独运算符时滑落的一些边缘情况?
ruby - 安全导航运算符 (&.) 的语法糖
安全导航运算符(&.
)如何用于[]
方法的语法糖?
ruby - 使用 Hash#dig 提取哈希值
给定一个像上面这样的哈希,说我想得到用户John,我可以做
在 Ruby 2.3 中使用Hash#dig
可以做同样的事情:
但是鉴于这u_548912
只是一个随机数(无法事先知道),有没有办法获取仍在使用的信息Hash#dig
?
ruby-on-rails - 升级到 Ruby 2.3.0 后迁移数据库失败
我已更新到 Ruby 2.3.0,但在创建新的 Rails 应用程序时遇到了一些问题。创建一个简单的新测试应用程序并搭建资源后,尝试执行时rake db:migrate
出现以下加载错误:
任何帮助排序都会很棒!
ruby - 使用 Hash#dig 或 Lonely operator(&.) 为嵌套哈希安全地赋值
要将值分配给嵌套哈希,我们可以使用
但是,如果缺少中间的任何部分,则会导致错误。
就像是
不会工作,因为还没有Hash#dig=
可用的。
为了安全地赋值,我们可以做
但是有更好的方法吗?
ruby - 当前的 Ruby 方法是通过 super 调用的吗?
在运行时的方法中,有没有办法知道该方法是否已super
在子类中调用?例如
我怎么能写via_super?
,或者,如果有必要,via_super?(:bar)
?
ruby - How to start Rack application with frozen string literals?
I'm trying to run our application under ruby 2.3 using the new ruby feature for automatic frozen strings turned on globally. (Ruby 2.3) This is normally done by passing the argument to a ruby script when starting as follows:
Unfortunately, our application is started using rackup, and I've tried the following command:
But this does not appear to work. How do I pass that parameter into Rack?
ruby-on-rails-4 - 如何在 Rails 中全局启用 Ruby 2.3 `--enable-frozen-string-literal`?
我正在 Ruby 2.3 之上构建一个全新的 Rails 应用程序,我希望所有 Rails 命令(例如rails s
,rails c
)和所有 Ruby 命令(例如rake do:something
)使用 Ruby 2.3 中引入的新的不可变字符串功能。(参见,例如https://wyeworks.com/blog/2015/12/1/immutable-strings-in-ruby-2-dot-3/)
--enable-frozen-string-literal
那么,在我发出的某些命令在 Ruby 中触底的所有可能上下文中,我如何将那个可爱的 Ruby 选项传递给 Ruby?
提前致谢!