У меня есть проект rails с именем food_delight, и я использую pry вместо irb, теперь моя проблема заключается в следующем: «Когда я делаю« pry », чтобы войти в консоль pry внутри корневого каталога проекта rails, классы ActiveRecord не найдены, но когда я это делаю «консоль рельсов» в том же каталоге rot, тогда все классы загружаются автоматически.Почему такое поведение, пожалуйста, объясните подробно, так как я новичок в рельсах всего 2-3 месяца и многому учусь.
Почему все константы не загружаются на консоль pry в корневом каталоге проекта rails?
Ответы (1)
Чтобы расширить комментарии, говорится об установке драгоценного камня pry-rails
в ваш Gemfile.
Только pry
работает так же, как irb
(консоль Ruby, вне контекста проекта), а использование pry-rails
означает, что rails c
будет загружаться с использованием pry
со всеми его функциями. А значит доступ к нужным константам.
Это также позволит вам использовать точки останова binding.pry
в коде по желанию.
В качестве альтернативы, если вы загрузите rails c
с установленным гемом pry
, вы сможете запустить команду pry
внутри него (вам возможно потребуется require 'pry'
перед этим), и она перейдет к использованию pry
внутри проекта. контекст. Это будет удобно, если вы не можете добавить гем pry-rails
в зависимости проекта.
(Фух - это много 'pry's
.)
Надеюсь, что это поможет - дайте мне знать, если у вас есть какие-либо вопросы.
irb
не загружает все указанные константы.irb
иpry
— простые консоли Ruby. Добавьте pry rails и введитеrails c
, теперь будет использоватьсяpry
. - person ndnenkov   schedule 20.02.2018