it-swarm.com.de

Wie zeige ich meine Umgebungsvariablen an?

Ich versuche, eine Verbindung zu meinem Pusher-Server herzustellen, erhalte jedoch die Fehlermeldung:

Fehlende Client-Konfiguration: Bitte überprüfen Sie, ob Schlüssel, geheim und app_id konfiguriert sind.

Ich möchte meine Umgebungsvariablen überprüfen, kann jedoch noch keine eindeutige Möglichkeit für Stack Overflow finden. 

15

Drucken der Umgebung aus der Shell

Wie andere Antworten gezeigt haben, kann man /usr/bin/env oder /usr/bin/printenv in der Befehlszeile verwenden, um zu sehen, wie sich die Umgebung in der Shell vor dem Starten von Rails oder in einer Subshell nach dem Starten befindet. Zum Beispiel:

  1. Rails s RETURN
  2. CTRL-Z
  3. envname__ RETURN
  4. fgname__ RETURN

Anzeigen von ENV aus der Ansichtsebene

In Ruby ist ENV ein "Hash-ähnlicher" Accessor für Umgebungsvariablen. es ist nicht ​​eigentlich ein Hash. Sie können ENV einfach von Ihrer Rails-Konsole aus überprüfen, indem Sie ENVoder ENV['foo'] eingeben. Manchmal möchten Sie jedoch möglicherweise sehen, wie Rails die Umgebung während des Renderns einschätzt. In diesem Fall möchten Sie den Rails-Debug-Helfer . Zum Beispiel:

# ERB
<%= debug ENV.to_h.to_yaml %>

# HAML
= debug ENV.to_h.to_yaml

Wenn Sie #to_yaml aufrufen, um das ENV-Objekt zu serialisieren, wird die Ausgabe leichter lesbar, Sie müssen jedoch zuerst ENV in einen Hash oder ein Array konvertieren. Sie können auch einfach debug ENV aufrufen, ohne ihn zu verketten. Es ist nur schwieriger für die Augen.

20
Todd A. Jacobs

Verwenden Sie den Befehl ENV in der Rails-Konsole. Dies gibt einen Hashwert Ihrer Umgebungswerte zurück, auf die Sie zugreifen können. Alternativ können Sie über den gleichen Befehl auf Ihre Umgebungsvariablen vom Stammpfad Ihrer Apps aus zugreifen. Die Variablen werden formatiert zurückgegeben.

7

Oder verwenden Sie die O/S-Shell, die in Ubuntu verwendet wird 

printenv
6

Beide Befehle werden in die Umgebungsvariablen geschrieben:

env

printenv

1
jasonleonhard

Ich habe auch Folgendes in der Ansichtsebene verwendet:

<% request.env.each do |key, value| %>
  <strong><%= key %></strong> => <%= value %><br/>
<% end %>

Ich fand es sehr hilfreich, Probleme zu debuggen, die durch Env-Variablen verursacht wurden, die auf Passagier-/Nginx-Ebene festgelegt wurden. Diese Probleme wurden bei Verwendung der Rails-Konsole nicht angezeigt.

0
crypticsymbols