如何在 Rails 7.2 控制台中为 `reload!` 起别名?

问题描述 投票:0回答:1

我在 Rails 控制台中有一个

reload!
命令的别名:

# ~/.irbrc

if defined? Rails
  def r
    reload!
  end
end

rails v7.2 中,这不再有效:

>> r
(stackoverflow):1:in `<main>': undefined method `reload!' for main (NoMethodError)

    reload!
    ^^^^^^^

但是

reload!
仍然可以单独工作:

>> reload!
Reloading...

如何将

reload!
r
混淆?

ruby-on-rails ruby-on-rails-7 rails-console
1个回答
0
投票

面向未来的方法似乎是IRB 扩展

IRB::Command.register(:r, Rails::Console::Reloader)

这是 Rails 7.2 中出现的一个相对较新的更改,带有 Rails::ConsoleMethods 的旧系统预计将在 Rails 8 中废弃。

© www.soinside.com 2019 - 2024. All rights reserved.