Не могу уйти от eval при следующем использовании Pry-rails

Привет, я установил Pry для отличной отладки, и раньше он работал, но когда я вхожу в код с помощью «далее», я получаю следующую ошибку:

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

У кого-нибудь еще была эта проблема?


person Shaun Frost Duke Jackson    schedule 05.12.2013    source источник
comment
я думаю, это говорит о том, что вы поместили отладчик внутри блока, который передается eval   -  person jvnill    schedule 05.12.2013
comment
Что значит оценить?   -  person Shaun Frost Duke Jackson    schedule 05.12.2013
comment
Вы можете вставить код, где вы добавили binding.pry?   -  person jvnill    schedule 05.12.2013
comment
@jvnill Я обновил код.   -  person Shaun Frost Duke Jackson    schedule 05.12.2013
comment
Не имею представления. быстрый гугл ошибки показывает неразрешенный билет github.com/nixme/pry-nav/ выпусков/20   -  person jvnill    schedule 06.12.2013
comment
Да, я тоже это видел, так запутался, я люблю PRY, но я не могу его использовать, у меня возникает одна и та же проблема каждый раз, когда я его вставляю.   -  person Shaun Frost Duke Jackson    schedule 06.12.2013
comment
попробуйте указать конкретную версию драгоценного камня и посмотрите, что сработает.   -  person jvnill    schedule 06.12.2013


Ответы (3)


Обязательно установите гем pry-nav.

У меня была такая же ошибка, потому что я предположил, что навигационные команды были включены в гем «pry-rails».

Добавьте gem 'pry-nav' в свой Gemfile, затем запустите bundle install.

person Aurelien Porte    schedule 01.04.2014
comment
Как этот ответ не везде? - person Stephen Corwin; 27.04.2014
comment
На страницах pry-nav теперь предлагается использовать pry-byebug (для Ruby ›= 2.0) или pry-debugger (для Ruby ‹= 1.9). - person exmaxx; 22.06.2016

Теперь вы можете использовать гем pry-byebug (для Ruby >= 2.0) или pry-debugger (для Ruby ‹= 1.9).

Используйте его вместе с pry gem в вашем Gemfile:

# Gemfile
gem 'pry'
gem 'pry-byebug'
person exmaxx    schedule 22.06.2016
comment
Это не работает для меня. - person lacostenycoder; 16.03.2021

Я считаю, что проблема здесь в том, что вы отлаживаете внутри блока, поэтому вы не можете вызывать next, пока находитесь внутри него.

person WhomWhomWhom    schedule 05.02.2016