[英]How do I view my environment variables?
我正在嘗試連接到我的推送服務器但收到錯誤:
缺少客戶端配置:請檢查是否已配置密鑰,密碼和app_id。
我想檢查我的環境變量,但在Stack Overflow上找不到任何明確的方法。
正如其他答案所指出的,可以從命令行使用/usr/bin/env
或/usr/bin/printenv
來查看在啟動Rails之前shell中的環境,或者在啟動它之后的子shell中。 例如:
rails s
RETURN env
RETURN fg
返回 在Ruby中, ENV是環境變量的“類哈希”訪問器; 它實際上不是一個Hash。 只需鍵入ENV
或ENV['foo']
就可以輕松地從Rails控制台中反省ENV,但有時您可能希望看到Rails在渲染過程中認為環境是什么。 在這種情況下,您需要Rails調試助手 。 例如:
# ERB
<%= debug ENV.to_h.to_yaml %>
# HAML
= debug ENV.to_h.to_yaml
調用#to_yaml來序列化ENV對象將使輸出更容易讀取,但需要首先將ENV轉換為散列或數組。 你也可以不用鏈接調用debug ENV
; 它只是在眼睛上更難。
或者在Ubuntu中使用O / S shell
printenv
在rails控制台中使用命令ENV
。 這將返回您可以訪問的環境值的哈希值。 或者,您可以使用相同的命令從應用程序根路徑訪問環境變量,並且將返回格式化的變量。
env
printenv
我還在視圖層中使用了以下內容:
<% request.env.each do |key, value| %>
<strong><%= key %></strong> => <%= value %><br/>
<% end %>
我發現調試由乘客/ nginx級別設置的env變量引起的問題非常有幫助,當我使用rails console時不會顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.