Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

204
Vistas
¿Cómo puedo acceder a las variables de entorno directamente en una plantilla de Django?

Estoy buscando hacer algo como este código que no funciona en mi plantilla de Django:

 {% if os.environ.DJANGO_SETTINGS_MODULE == "settings.staging" %}

¿Es posible algo así? Mi solución es crear un procesador de contexto para que la variable esté disponible en todas las plantillas, pero quería saber si hay una forma más directa de lograr el mismo resultado.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Use context_processor , haga lo siguiente y debería poder acceder a os.environ['DJANGO_SETTINGS_MODULE'] como SETTING_TYPE en las plantillas. Ejemplo, puede usar {% if SETTING_TYPE == "settings.staging" %}

proyecto/procesadores_de_contexto.py

 import os def export_vars(request): data = {} data['SETTING_TYPE'] = os.environ['DJANGO_SETTINGS_MODULE'] return data

project/settings.py (su archivo de configuración real)

 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ ... 'project.context_processors.export_vars', ... ] } } ]
about 4 years ago · Santiago Trujillo Denunciar

0

Ampliando el comentario de @vinay kumar , puede crear un filtro de plantilla personalizado de la siguiente manera:

application/template_tags_folder/template_tags_file.py

 from django.template.defaulttags import register import os @register.filter def env(key): return os.environ.get(key, None)

Y luego en su plantilla puede acceder a ella de esta manera:

plantilla.html

 {% if 'DJANGO_SETTINGS_MODULE'|env == 'app_name.staging_settings' %}

Finalmente, dejo una referencia de documentos de django y una referencia de stackoverflow para crear etiquetas y filtros de plantilla personalizados en django.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda