Rails控制台的自定义扩展

时间:2011-03-14 14:28:04

标签: ruby-on-rails console

我在Rails script/console会话期间经常使用短代码片段,例如

>> app.get 'admin/login'
>> app.response.body
# look up 'authenticity_token' in the login form's HTML
>> login_data = { "authenticity_token" => "token_value",
                  "username" => "admin",
                  "password" => "admin_password" }
>> app.post 'admin/login', login_data

我想为控制台制作一个帮助方法/扩展名,所以我只想使用

>> app.admin_logon

实现这一目标的可能方案是什么?

2 个答案:

答案 0 :(得分:5)

您可以在〜/ .irbrc文件中定义辅助函数。这将影响您的所有irb会话,而不仅仅是rails控制台会话,因此您可能必须有条件地执行一些帮助程序:

if defined? Rails
  [helper code here...]
end

答案 1 :(得分:0)

只需在项目中的已加载文件夹中添加一个模块。 例如,将console_extensions.rb添加到您的lib文件夹中:

module ConsoleExtensions
  def admin_logon
    # custom code here
  end
end