Невозможно убежать от eval с последующим использованием Pry-rails
Привет, я установил Pry, чтобы выполнить некоторую отладочную отладку и работал ли она раньше, но когда я вхожу в код с "next", я получаю следующую ошибку:
SyntaxError: (eval):2: Can't escape from eval with next
Используемый код:
def create
binding.pry
build_resource(sign_up_params)
if resource.save
yield resource if block_given?
if resource.active_for_authentication?
set_flash_message :notice, :signed_up if is_flashing_format?
sign_up(resource_name, resource)
respond_with resource, :location => after_sign_up_path_for(resource)
else
set_flash_message :notice, :"signed_up_but_#{resource.inactive_message}" if is_flashing_format?
expire_data_after_sign_in!
respond_with resource, :location => after_inactive_sign_up_path_for(resource)
end
else
clean_up_passwords resource
respond_with resource
end
end
У кого-нибудь еще была эта проблема?
Ответы
Ответ 1
Не забудьте установить драгоценный камень "pry-nav".
У меня была такая же ошибка, потому что я сделал предположение, что навигационные команды были включены в жемчужину pry-rails.
Добавьте gem 'pry-nav'
в свой Gemfile, затем запустите bundle install
.
Ответ 2
Теперь вы можете использовать pry-byebug gem (для Ruby >= 2.0) или pry-debugger (для Ruby <= 1.9).
Используйте его вместе с pry
gem в своем Gemfile:
# Gemfile
gem 'pry'
gem 'pry-byebug'
Ответ 3
Я считаю, что проблема заключается в том, что вы отлаживаете внутри блока, поэтому вы не можете вызвать next
, пока вы находитесь внутри него.