0
我在調試問題上遇到問題。我試圖在.html.erb文件上打印存儲在會話哈希中的變量的值。我使用會話參數的調試屏幕來確認所有變量都存在,但是當瀏覽器開始呈現html代碼時,我看不到我需要的值。如何在Ruby on Rails中的會話對象中顯示值?
在控制器類我有:
@var = session[:var]
和html.erb文件
<%= @var %>
我使用調試屏幕此代碼:
<%# in application.html.erb %>
<%= debug(params) if Rails.env.development? %>
在哪裏錯了嗎?
你能告訴我們關於你的「調試屏幕」的更多信息嗎?你在調試屏幕上使用什麼工具/代碼?你是否在控制器或視圖中檢查變量?你在檢查session [:var]或@var的值還是兩者? – eiko
我使用這段代碼進行調試屏幕,我把這一行放在application.html.erb中: <%= debug(params)if Rails.env.development? %> 我檢查@var的價值,因爲調試屏幕這樣說: 「會話:紅寶石/哈希與 - 高德:ActionController的::參數 元素: VAR:‘5’ 高德: :@permitted:false「 所以我認爲會議[:var]中的一切都很好。 –
我建議添加一個調試器到控制器方法 - 撬工程很好。 https://github.com/rweng/pry-rails你可以在'@var = session [:var]'之後添加'biding.pry'。否則,在您的控制器操作+視圖中提供更多代碼。 –