如何在启动Rails控制台时自动运行代码?

假设每次Rails控制台出现时我都想要问候:

Scotts-MBP-4:ucode scott$ rails c Loading development environment (Rails 4.2.1) Hello there! I'm a custom greeting 2.1.5 :001 > 

在哪里我会把puts 'Hello there! I\'ma custom greeting' puts 'Hello there! I\'ma custom greeting'吗?

另一个Stackoverflow回答建议,我也在其他地方读过这个,我可以把它放在这样的初始化器中:

 # config/initializers/console_greeting.rb if defined?(Rails::Console) puts 'Hello there! I\'ma custom greeting' end 

虽然这对我不起作用:(。即使没有if defined?(Rails::Console)我仍然没有输出。看起来像我进入控制台时初始化器没有运行,尽管其他人建议。

我使用〜/ .irbrc用于类似的目的(我在每个控制台会话中都需要一个gem)。 例如,我的.irbrc

 if (defined? Rails) # Rails specific end # common for all irb sessions 

您可以使用项目名称将执行代码限制为仅一个项目的控制台:

 if (defined? Rails) && (defined? YourProject) # code goes here end