Objectif de «consider_all_requests_local» dans config / environnements / development.rb?


94

Quel est le but de ce paramètre de configuration Rails ...

config.action_controller.consider_all_requests_local = true

Il est défini sur true par défaut dans config/environments/development.rb.

Merci,

Ethan


12
En aparté: Dans les rails 3, l'option estconfig.consider_all_requests_local=
mort le

Réponses:


123

Les demandes non locales génèrent des pages d'erreur conviviales. Les demandes locales, supposées provenir de développeurs, voient un message d'erreur plus utile qui comprend des numéros de ligne et une trace arrière. consider_all_requests_localpermet à votre application d'afficher ces messages conviviaux pour les développeurs même lorsque la machine qui fait la demande est distante.


8
Le message d'erreur par défaut de Rails n'est que marginalement convivial. Cela sert également un autre objectif, cependant, qui est de ne pas montrer trop d'informations sur l'erreur interne à des tiers qui pourraient vouloir utiliser ces informations contre vous.
Gordon McCreight

Cela pourrait-il modifier l'état de la réponse et les en-têtes? Dites, si j'essaye de retourner un 503mais qu'un client reçoit un 500?
PJSCopeland

4

Au niveau du développement, nous définissons:

consider_all_requests_local set = true

car le développeur doit jeter un œil à l'erreur complète montrant la mise en page / la vue comme vous pouvez le voir dans l'image ci-dessous.

entrez la description de l'image ici

Mais au niveau de la production, nous n'avons pas besoin de montrer notre bogue de codage interne, nous définissons donc false:

config.consider_all_requests_local = false

entrez la description de l'image ici

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.