Pourquoi le rack env haash est-il vide dans l'environnement de test des rails?
-
13-11-2019 - |
Question
Dans mon application Rails, j'accède à l'env hachage envisagé dans l'une de mes actions de contrôleur.
quelque chose sur les lignes de:
def my_before_filter
env['some.key'] = "Something or other"
end
Cela fonctionne très bien pour mes besoins.
Si je démarre mon application Rails dans l'environnement de test et visitez une action comme:
# /users in UsersController#index
def index
puts env.inspect
end
Ensuite, le contenu du hachage env est la sortie de la console comme prévu.
Lorsque je reçois cette action dans un exemple de RSPEC, la sortie est un hachage vide?
it 'should get the index action' do
get :index
end
.....{}.... # rspec output
Pourquoi l'env haash est-il vide?
J'ai construit un Rails factices App pour afficher cette
La solution
utiliser
request.env
au lieu d'envisage juste dans le code du contrôleur.
E.g /
def index
puts request.env.inspect
end
espère que cela aide?
BTW sur une autre note: lorsque vous travaillez avec votre Github Repo, vous devez supprimer le public / Index.html pour votre parcours root pour fonctionner, lors de l'exécution du serveur.