我的.irbrc位于我的〜/ .irbrc.
我注意到当我在Rails 3.x应用程序上运行'rails console'时,它说它正在寻找一个宝石.
Gems missing: no such file to load -- ap
Run Code Online (Sandbox Code Playgroud)
但如果我在rails 2.x应用程序上运行'irb'或'script/console',一切都会正常运行.
是否有另一个位置Rails 3寻找irbrc配置?
我不确定这些信息是否适用,但我在我的盒子上运行RVM(Ubuntu)
我正在尝试自定义 pry 的pryrc文件,但找不到它。文档说它位于主目录中,但我在那里没有看到它。如果它是不可见的,可以告诉我如何编辑它吗?
首先,我已阅读之前的问题和答案,但没有找到任何可以解决我的问题的内容。
在 Pry 官方网站http://pryrepl.org/上,它说这将为您安装 pry:“gem install pry”但是,我尝试这样做并收到此错误“错误:执行 gem 时.. .(Zlib::DataError)设置的代码长度无效”
查看有关如何安装此程序的更多答案,我发现建议输入“gem install pry-windows”,但仍然没有结果。
有人可以在输入代码之前退后一步,让我提前知道需要什么要求吗?
我安装了 ruby,通常使用 cmd 来运行 ruby 文件。我还有 irb(交互式 Ruby),并尝试在那里运行上述命令,但也无济于事。
我应该在哪里运行这些命令“gem install pry”、cmd 或 irb?另外,需要提前下载什么文件吗?
我希望 irb 默认不打印我的对象属性。那可能吗?例如,我有:
class Test
@tmp = nil
def initialize(str)
@tmp = str
self
end
end
Run Code Online (Sandbox Code Playgroud)
我得到:
irb> t = Test.new("hello")
=> #<Test:0x18f6198 @tmp="hello">
Run Code Online (Sandbox Code Playgroud)
我不想看到@tmp="hello"部分。
在 IRB 中,
.sort 运行良好。
(1..10).to_a.sample(5).sort => [1, 3, 6, 8, 9]
但是, .reverse 不起作用
(1..10).to_a.sample(5).reverse => [4, 3, 10, 2, 1]
我怎样才能得到相反的结果?谢谢

有谁知道这里发生了什么?为什么" - "找不到?在IRB中尝试一下.
如果你这样做
string = "(( :H – :2B – :3B – :HR )+( 2 * :2B )+( 3 * :3B )+( 4 * :HR ))/ :AB "
string.split(" ")[2] == "-"
Run Code Online (Sandbox Code Playgroud)
它也返回false.
在我尝试编写具有高可读性的代码时,我一直使用or和and运算符作为||和的同义词&&.虽然,现在我已经了解or并且and有不同的应用.http://devblog.avdi.org/2010/08/02/using-and-and-or-in-ruby/
令人困惑的是在我的rails应用程序和IRB控制台中运行以下代码时的区别.
在IRB:
var = false or true
# => true
Run Code Online (Sandbox Code Playgroud)
在我的rails应用程序中:
var = false or true
# => false
Run Code Online (Sandbox Code Playgroud)
简而言之,似乎or在IRB和实际的rails应用程序中没有相同的优先级.这令人困惑和误导.有什么理由吗?
我已经读过,用Ruby编程时irb的目的是帮助实时测试代码.我之前学过HTML和CSS,那时我只需在浏览器中打开页面并保存/刷新页面就可以测试我的代码.irb是否与Ruby执行类似的功能?如果是这样,我是否认为在irb中测试Ruby代码(而不是浏览器)的好处是,irb可以更容易地将Ruby中的错误与Javascript/HTML /等中的错误分开?看来Ruby程序迟早会在浏览器中运行(理论上),在我看来,程序员似乎希望测试条件尽可能接近真实用例环境.