Как запустить консоль рельсов с выключенной прай?

Иногда у меня есть причина хотеть запустить консоль rails как irb repl, а не как pry (так же, как и pry). По умолчанию это pry, потому что pry есть в Gemfile. Как это делается в настоящее время?

Я думаю, что когда-то был параметр --irb rails console но это, кажется, прошло Когда я пытаюсь это сделать, я получаю сообщение об ошибке устаревания.

Подробнее

Если я просто запустил "консоль рельсов", мне потребовалось бы попытаться.

Если я запускаю "rails console -irb=irb":

$ rails c -irb=irb                                                                                                                                                                         
--irb option is no longer supported. Invoke `/your/choice/of/ruby script/rails console` instead

Удалить строки из моего Gemfile:

gem 'rails', '3.2.18'
gem 'pry-rails'
gem 'pry-plus'

5 ответов

Запуск прай при звонке rails console или же rails c устанавливается жемчужиной Если вы посмотрите на проблемы с pry-rails, есть один, который описывает решение.

Определите переменную среды DISABLE_PRY_RAILS как 1,

Таким образом, вы можете вызвать консоль rails без вызова:

DISABLE_PRY_RAILS=1 rails c

Работает в Rails 4: в вашем application.rb, внутри своего класса Application, поместите этого щенка.

# Use the IRB console instead of the Pry one
console do
  require 'irb'
  config.console = IRB
end

Я не мог больше брать консоль Прай. Это продолжало помещать мой курсор в нечетные места в непредсказуемые времена. Я даже не могу описать это, но если вы знаете, о чем я говорю, и знаете решение, пожалуйста, дайте мне знать.

Вдохновленный ответами выше, я добавил следующее в определение класса в application.rb так что Pry переключается с консоли:

console do
  if ENV['IRB']
    require 'irb'
    config.console = IRB
  end
end

Вы можете запустить rails c чтобы получить консоль Pry, и IRB=true rails c чтобы получить консоль IRB. Это легко изменить, если вы хотите обратное. Работает в Rails 4 и 5.

Для тех, кто сталкивается с той же проблемой, это мой (дрянной) обходной путь.

Я обернул монеты в Gemfile следующим образом:

...
unless ENV['NOPRY']
  gem 'pry-rails'
  gem 'pry-plus'
end
...

Затем запустите это из терминала Unix:

NOPRY=true bundle install
NOPRY=true rails console

Не красиво, но выполняет свою работу...

Вы также можете сделать это, когда консоль уже запущена черезIRB.startметод.

Другие вопросы по тегам