Я использую Rails 4 с гемами byebug, pry-rails, pry-byebug, pry-stack_explorer.
Когда я заменяю в файле представления:
<td class="subtotal"><%= order.display_item_total %></td>
с участием
<td class="subtotal"><%= binding.pry %></td>
и введите в консоли, где запущен процесс сервера rails и его выполнение остановлено в точке останова pry:
order.inspect
я получаю сообщение об ошибке:
NameError: undefined local variable or method `order' for #<ActionView::OutputBuffer:0x007fdf13d99bb8>
Когда я заменяю binding.pry на order.inspect, я получаю информацию об объекте заказа в браузере.
Я ожидаю, что смогу получить порядок объектов внутри сеанса pry в консоли. Что я делаю неправильно?
РЕДАКТИРОВАТЬ: В начале вывода консоли:
From: /Users/standardnerd/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/activesupport-4.2.7.1/lib/active_support/core_ext/string/output_safety.rb @ line 166 ActiveSu
pport::SafeBuffer#safe_concat:
165: def safe_concat(value)
=> 166: raise SafeConcatError unless html_safe?
167: original_concat(value)
168: end
Влияет ли это на область действия переменных?
<%= binding.pry %>
на<% binding.pry %>
- person John Feltz   schedule 16.09.2016