如何在rails控制台启动时运行一些代码,有点像rc文件?

有没有办法执行一些只在控制台启动时运行的代码? 有点像rc文件( .bashrc.zshrc等)? 我发现自己总是做很多事情。

例如,我会把它放在哪里

 u = User.find_by_username('my_console_user') 

所以u可以在rails console

我已经诉诸于此,使用$作为全局变量声明,并使用不起眼的console do 。 我认为有些东西更优雅……

  class Application < Rails::Application #this is only executed in the console, also doens't seem to be documented anywhere but here: https://github.com/rails/rails/pull/3139 console do $u1 = User.find_by_username('user1') $u2 = User.find_by_username('user2') end end 

如果你使用irb ,只需在~/.irbrc添加一个方法(如果不存在则创建一个):

 def find_by_username(username) User.find_by_username('my_console_user') end 

如果使用~/.pryrc pry-rails也可以添加到~/.pryrc

希望这可以帮助!