How can I reload a script in IRB?

醉酒当歌 提交于 2019-11-30 04:36:51

In irb, File.expand_path(__FILE__)} will just return "#{path you ran irb from}/(irb)". Which creates a path that doesn't actually exist. Luckily all file paths are relative to where you ran irb anyway. This means all you need is:

load "lib/query.rb"

If you want to use the __FILE__ in an actual file, that's fine, but don't expect it to produce a valid path in irb. Because an irb there is no "file" at all, so it cannot return valid path at all.

Also, __FILE__ will work fine if used in a file loaded into irb via load or require. Cause that's kinda what it's for.

Instead of using require, try load. The former only loads a source file once, while the latter loads it every time you call it.

according to this link you need to load your file and do not forget the extention.

Here is a fancier version to use too at this link number 2 which could be helpful for you too.

You may want to try hashing out why your rails console isn't working for you though.

I think load is what you are looking for.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!