Overview

All 4 of 4 tested scraper methods completed successfully for this URL.

The best-performing option was curl-cffi:0.14 with datacenter proxy routing. It returned HTTP 200. Total runtime was 0.57s. Estimated request cost was $0.000027.

Tested Methods

Scraper Proxy Response Time Request Cost

curl-cffi:0.14

apiritif/curl-cffi:0.14

datacenter

200 0.57s

$0.000027

$0.027/1k

Playwright:1.58

apiritif/playwright:1.58

datacenter

200 3.83s

$0.000032

$0.032/1k

Pydoll:2.20

apiritif/pydoll:2.20

datacenter

200 4.65s

$0.000033

$0.033/1k

Scrapling StealthyFetcher 0.4

apiritif/scrapling-stealthyfetcher:0.4

datacenter

200 4.12s

$0.000034

$0.034/1k

Truncated
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>
    
    <meta name="description" content="How to use environment variables to keep secure keys out of your code.">
    <meta name="keywords" content="software, coding, development, engineering, inclusive, community">

    <meta property="og:type" content="article" />
    <meta property="og:title" content="Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables" />
    <meta property="og:description" content="How to use environment variables to keep secure keys out of your code." />
    <meta property="og:site_name" content="DEV Community" />
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:site" content="@thepracticaldev">
    <meta name="twitter:creator" content="@">
    <meta name="twitter:title" content="Django Cheat Sheet: Keep Credentials Secure with Environment Variables">
    <meta name="twitter:description" content="How to use environment variables to keep secure keys out of your code.">

      <link rel="canonical" href="https://dev.to/nicolaerario/comment/fe1e" />
      <meta property="og:url" content="https://dev.to/nicolaerario/comment/fe1e" />
      <meta property="og:title" content="How do you manage Boolean with python-dotenv? I... — DEV Community" />
      <meta name="twitter:title" content="How do you manage Boolean with python-dotenv? I... — DEV Community">
      <meta property="og:image" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg">
      <meta name="twitter:image:src" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg">

      <meta name="last-updated" content="2026-03-20 10:09:32 UTC">
      <meta name="user-signed-in" content="false">
      <meta name="head-cached-at" content="1774001372">
      <meta name="environment" content="production">
      <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css" media="all" id="main-minimal-stylesheet" />
<link rel="stylesheet" href="https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css" media="all" id="main-views-stylesheet" />
<link rel="stylesheet" href="https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css" media="all" id="main-crayons-stylesheet" />

      <script src="https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js" defer="defer"></script>

        <meta name="search-script" content="https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js">
      <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
      <link rel="icon" type="image/x-icon" href="https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" />
      <link rel="apple-touch-icon" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="152x152" href="https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="180x180" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="167x167" href="https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link href="https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="192x192" />
      <link href="https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="128x128" />
      <meta name="apple-mobile-web-app-title" content="dev.to">
      <meta name="application-name" content="dev.to">
      <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)">
      <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)">
      <link rel="search" href="https://dev.to/open-search.xml" type="application/opensearchdescription+xml" title="DEV Community" />

      <meta property="forem:name" content="DEV Community" />
      <meta property="forem:logo" content="https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" />
      <meta property="forem:domain" content="dev.to" />
    
  </head>
      <body
        class="sans-serif-article-body default-header"
        data-user-status="logged-out"
        data-is-root-subforem="false"
          data-subforem-id="1"
        data-side-nav-visible="true"
        data-community-name="DEV Community"
        data-subscription-icon="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png"
        data-locale="en"
        data-honeybadger-key="hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr"
        data-deployed-at="2026-03-19T20:49:25Z"
        data-latest-commit-id="f47ae62cb2f25a529b1137abf7975d0e86324bf1"
        data-ga-tracking="UA-71991109-1"
        data-cookie-banner-user-context="logged_out_only"
        data-cookie-banner-platform-context="off"
        data-algolia-id="PRSOBFP46H"
        data-algolia-search-key="9aa7d31610cba78851c9b1f63776a9dd"
        data-algolia-display="true"
        data-dynamic-url-component="bmar11"
        data-ga4-tracking-id="G-TYEM8Y3JN3">
        
        <script>
          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {
            document.body.classList.add("hidden-shell");
          }
            if (new Date() > new Date("2026-02-04T09:00:00-05:00")) {
              document.body.dataset.sideNavVisible = "false";
            } 
        </script>

        <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css" media="all" id="secondary-minimal-stylesheet" />
<link rel="stylesheet" href="https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css" media="all" id="secondary-views-stylesheet" />
<link rel="stylesheet" href="https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css" media="all" id="secondary-crayons-stylesheet" />

        <div id="body-styles">
          <style>
            :root {
              --accent-brand-lighter-rgb: 80, 99, 301;
              --accent-brand-rgb: 59, 73, 223;
              --accent-brand-darker-rgb: 47, 58, 178;
            }
          </style>
        </div>
        <div id="audiocontent" data-podcast="">
          
        </div>
        <div class="navigation-progress" id="navigation-progress"></div>

<header id="topbar" class="crayons-header topbar print-hidden">
  <span id="route-change-target" tabindex="-1"></span>
  <a href="#main-content" class="skip-content-link">Skip to content</a>
  <div class="crayons-header__container">
    <span class="inline-block m:hidden ">
      <button class="c-btn c-btn--icon-alone js-hamburger-trigger mx-2">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a9syj4ev9usghrj2cupgvw6aabjusk1t" class="crayons-icon"><title id="a9syj4ev9usghrj2cupgvw6aabjusk1t">Navigation menu</title>
    <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path>
</svg>

      </button>
    </span>
    <a href="/" class="site-logo" aria-label="DEV Community Home" >
    <img class="site-logo__img"
         src="https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png"
         style="aspect-ratio: 10 / 8"
         alt="DEV Community">
</a>


    <div class="crayons-header--search js-search-form" id="header-search">
      <form accept-charset="UTF-8" method="get" action="/search" role="search">
        <div class="crayons-fields crayons-fields--horizontal">
          <div class="crayons-field flex-1 relative">
            <input id="search-input" class="crayons-header--search-input crayons-textfield js-search-input" type="text" id="nav-search" name="q" placeholder="Find related posts..." autocomplete="off" />
            <button type="submit" aria-label="Search" class="c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0">
              <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="asynyx1qxw5bjg880ehhj6dhqa8iosdc" aria-hidden="true" class="crayons-icon"><title id="asynyx1qxw5bjg880ehhj6dhqa8iosdc">Search</title>
    <path d="M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z"></path>
</svg>

            </button>

            <a class="crayons-header--search-brand-indicator" href="https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral" target="_blank" rel="noopener noreferrer">
                Powered by Algolia
                <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" width="24" height="24" viewBox="0 0 500 500.34" role="img" aria-labelledby="amiqq4aj0vjjtdk14z4cq9fy0cjejhz5" aria-hidden="true" class="crayons-icon"><title id="amiqq4aj0vjjtdk14z4cq9fy0cjejhz5">Search</title>
  <defs></defs><path class="cls-1" d="M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z"></path>
</svg>

            </a>
          </div>
        </div>
      </form>
    </div>

    <div class="flex items-center h-100 ml-auto">
        <div class="flex" id="authentication-top-nav-actions">
          <span class="hidden m:block">
            <a href="https://dev.to/enter?signup_subforem=1" class="c-link c-link--block mr-2 whitespace-nowrap ml-auto" data-no-instant>
              Log in
            </a>
          </span>

          <a href="https://dev.to/enter?signup_subforem=1&amp;state=new-user" data-tracking-id="ca_top_nav" data-tracking-source="top_navbar" class="c-cta c-cta--branded whitespace-nowrap mr-2" data-no-instant>
            Create account
          </a>
        </div>
    </div>
  </div>
</header>

<div class="hamburger">
  <div class="hamburger__content">
    <header class="hamburger__content__header">
      <h2 class="fs-l fw-bold flex-1 break-word lh-tight">DEV Community</h2>

      <button class="c-btn c-btn--icon-alone js-hamburger-trigger shrink-0" aria-label="Close">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7jqca81wlh4sunhyocm20yteah4aqdu" aria-hidden="true" class="crayons-icon c-btn__icon"><title id="a7jqca81wlh4sunhyocm20yteah4aqdu">Close</title><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z"></path></svg>

      </button>
    </header>

    <div class="p-2 js-navigation-links-container" id="authentication-hamburger-actions">
    </div>
  </div>
  <div class="hamburger__overlay js-hamburger-trigger"></div>
</div>


        <div id="active-broadcast" class="broadcast-wrapper"></div>
<div id="page-content" class="wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760" data-current-page="comments-index">
  <div id="page-content-inner" data-internal-nav="false">
    <div id="page-route-change" class="screen-reader-only" aria-live="polite" aria-atomic="true"></div>

    <script src="https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js" defer="defer"></script>

  
<script src="https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js" defer="defer"></script>

<div class="crayons-layout crayons-layout--limited-l gap-0" data-follow-button-container="true">
    <span id="comment-article-indicator" data-article-id="172117"></span>

    <div id="response-templates-data" class="hidden"></div>
    <script src="https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js" defer="defer"></script>
    <header class="p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0">
        <h1 class="crayons-subtitle-1 mb-4">
          <span class="fw-normal color-base-60">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>
        </h1>
        <div class="flex">
          <a class="crayons-btn crayons-btn--outlined mr-2" href="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5">View post</a>
        </div>
    </header>


  <section
    class="crayons-card text-padding min-w-0 z-elevate"
    id="comments-container"
    data-commentable-id="172117"
    data-commentable-type="Article"
    data-commentable-author-id="102760"
    data-commentable-co-author-ids="">


    <div class="comments" id="comment-trees-container">
              <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-0
                    root
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="m:mx-1 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="am0hfruw7t7kbloxq90gm2u9chkb8rff" class="crayons-icon expanded"><title id="am0hfruw7t7kbloxq90gm2u9chkb8rff">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a60pbxfju0t7z027ra8mfcb5i35wrg6s" class="crayons-icon collapsed"><title id="a60pbxfju0t7z027ra8mfcb5i35wrg6s">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-273144"
    class="
      comment single-comment-node
      
      root
      comment--deep-0
      
    "
    data-comment-id="273144"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e"
    data-comment-author-id="108601"
    data-content-user-id="108601">
    <a name="comment-fe1e" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/nicolaerario" class="shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" alt="nicolaerario profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/nicolaerario" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Nicola Erario
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-273144" aria-controls="comment-profile-preview-content-273144" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Nicola Erario profile details">
      Nicola Erario
      
    </button>
    <div id="comment-profile-preview-content-273144" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #160533; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/nicolaerario" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Nicola Erario
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Nicola Erario" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            Italy 🇮🇹 
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-10-18T15:20:33Z" class="date">Oct 18, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-17T18:02:26Z" class=date-short-year>
    Sep 17 &#39;19
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-273144" aria-controls="comment-dropdown-273144" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="akgq3k15dqu49j2fytbaaltxd0kpvll8" class="crayons-icon pointer-events-none"><title id="akgq3k15dqu49j2fytbaaltxd0kpvll8">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-273144" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Nicola Erario&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="108601" data-action="settings-button" data-path="https://dev.to/nicolaerario/comment/fe1e/settings" aria-label="Go to Nicola Erario&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="108601">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="273144"
                data-comment-url="https://dev.to/nicolaerario/comment/fe1e"
                aria-label="Hide Nicola Erario&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/nicolaerario/comment/fe1e/mod" aria-label="Moderate Nicola Erario&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e" aria-label="Report Nicola Erario&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-273144"
    data-comment-id="273144"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3btu01xca2urgip0ej7lt2tshj6bs28" class="crayons-icon reaction-icon not-reacted"><title id="a3btu01xca2urgip0ej7lt2tshj6bs28">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a207ojso91c7liu3pwqmlfkjddpc2zco" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a207ojso91c7liu3pwqmlfkjddpc2zco">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">7</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="273144"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-273144"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahwvmev4joq47o1xnqyy2hn24vhmxtb4" class="crayons-icon reaction-icon not-reacted"><title id="ahwvmev4joq47o1xnqyy2hn24vhmxtb4">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amu86j05tb5rto5dwbol17xfyeew32qd" class="crayons-icon expanded"><title id="amu86j05tb5rto5dwbol17xfyeew32qd">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="agcra525od8yaymvu4prqj30npmizg4n" class="crayons-icon collapsed"><title id="agcra525od8yaymvu4prqj30npmizg4n">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-273163"
    class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    "
    data-comment-id="273163"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27"
    data-comment-author-id="102760"
    data-content-user-id="102760">
    <a name="comment-fe27" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/jamestimmins" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg" alt="jamestimmins profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/jamestimmins" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      James Timmins
    </span>
      <span class="crayons-hover-tooltip inline-block spec-op-author -mr-2" data-tooltip="Author">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" class="crayons-icon">
    <path d="M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z"></path>
</svg>

      </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-273163" aria-controls="comment-profile-preview-content-273163" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="James Timmins profile details">
      James Timmins
      
    </button>
    <div id="comment-profile-preview-content-273163" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #002a9e; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/jamestimmins" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      James Timmins
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: James Timmins" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-09-19T16:58:25Z" class="date">Sep 19, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>

      <span class="crayons-hover-tooltip inline-block spec-op-author -ml-2" data-tooltip="Author">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" class="crayons-icon">
    <path d="M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z"></path>
</svg>

      </span>

  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-17T18:29:14Z" class=date-short-year>
    Sep 17 &#39;19
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-273163" aria-controls="comment-dropdown-273163" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7gmp3o0mt8lu9t1omyan1swl0w3k035" class="crayons-icon pointer-events-none"><title id="a7gmp3o0mt8lu9t1omyan1swl0w3k035">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-273163" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to James Timmins&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="102760" data-action="settings-button" data-path="https://dev.to/jamestimmins/comment/fe27/settings" aria-label="Go to James Timmins&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="102760">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="273163"
                data-comment-url="https://dev.to/jamestimmins/comment/fe27"
                aria-label="Hide James Timmins&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/jamestimmins/comment/fe27/mod" aria-label="Moderate James Timmins&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/jamestimmins/comment/fe27" aria-label="Report James Timmins&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>

<ol>
<li>Explicitly check for a string value. DEBUG = (os.getenv("DEBUG") == 'true')</li>
<li>Cast the val to a boolean DEBUG = bool(os.getenv("DEBUG")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>
<li>Use a more fully-featured package like <a href="https://github.com/joke2k/django-environ" rel="nofollow">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>
</ol>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-273163"
    data-comment-id="273163"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="acgeuroqpao89v1gqag5tnag1lzjbopd" class="crayons-icon reaction-icon not-reacted"><title id="acgeuroqpao89v1gqag5tnag1lzjbopd">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="alpwyiy7hd86mwy98dvfifgf6axh83az" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="alpwyiy7hd86mwy98dvfifgf6axh83az">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">7</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="273163"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-273163"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a37arejzrbksr1ryfcmai2lxbi18wfv9" class="crayons-icon reaction-icon not-reacted"><title id="a37arejzrbksr1ryfcmai2lxbi18wfv9">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ad4sa0cqju63trsnkxpdxa4f4dsoh3yn" class="crayons-icon expanded"><title id="ad4sa0cqju63trsnkxpdxa4f4dsoh3yn">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a3npi4krrvgdd27bjdm7498cnrep1iw0" class="crayons-icon collapsed"><title id="a3npi4krrvgdd27bjdm7498cnrep1iw0">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-359014"
    class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    "
    data-comment-id="359014"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26"
    data-comment-author-id="119873"
    data-content-user-id="119873">
    <a name="comment-kb26" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/bhupesh" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg" alt="bhupesh profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/bhupesh" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Bhupesh Varshney 👾
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-359014" aria-controls="comment-profile-preview-content-359014" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Bhupesh Varshney 👾 profile details">
      Bhupesh Varshney 👾
      
    </button>
    <div id="comment-profile-preview-content-359014" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #0000bc; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/bhupesh" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Bhupesh Varshney 👾
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney 👾&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Bhupesh Varshney 👾" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Email
          </div>
          <div class="value">
            <a href="mailto:"></a>
          </div>
        </li>
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            New Delhi, India 🇮🇳
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-12-05T15:02:51Z" class="date">Dec 5, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2020-01-16T08:59:45Z" class=date-short-year>
    Jan 16 &#39;20
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-359014" aria-controls="comment-dropdown-359014" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="adnjyxwg4pvhdki3fg0akoitopv6pfg1" class="crayons-icon pointer-events-none"><title id="adnjyxwg4pvhdki3fg0akoitopv6pfg1">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-359014" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Bhupesh Varshney 👾&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="119873" data-action="settings-button" data-path="https://dev.to/bhupesh/comment/kb26/settings" aria-label="Go to Bhupesh Varshney 👾&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="119873">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="359014"
                data-comment-url="https://dev.to/bhupesh/comment/kb26"
                aria-label="Hide Bhupesh Varshney 👾&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/bhupesh/comment/kb26/mod" aria-label="Moderate Bhupesh Varshney 👾&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/bhupesh/comment/kb26" aria-label="Report Bhupesh Varshney 👾&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
<p>thanks for this</p>

</body></html>

        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-359014"
    data-comment-id="359014"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aaqd7b0m9ebsm08ygyp5ap1r776nxmue" class="crayons-icon reaction-icon not-reacted"><title id="aaqd7b0m9ebsm08ygyp5ap1r776nxmue">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ab3h6paxnc5enxpz5190u3riq9y1tkc4" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="ab3h6paxnc5enxpz5190u3riq9y1tkc4">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">1</span><span class="reactions-label hidden m:inline-block">&nbsp;like</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="359014"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-359014"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aceqw4gqgqb3jxi544mvbyzdyyv9psv4" class="crayons-icon reaction-icon not-reacted"><title id="aceqw4gqgqb3jxi544mvbyzdyyv9psv4">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7qkh3osze31p5tx1sa37ss9h410885k" class="crayons-icon expanded"><title id="a7qkh3osze31p5tx1sa37ss9h410885k">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ap76c9hto972y44k19vq49h1o4ipe73a" class="crayons-icon collapsed"><title id="ap76c9hto972y44k19vq49h1o4ipe73a">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-1107596"
    class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    "
    data-comment-id="1107596"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm"
    data-comment-author-id="1215611"
    data-content-user-id="1215611">
    <a name="comment-2b0bm" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/eftehassanpp" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png" alt="eftehassanpp profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/eftehassanpp" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      eftehassanpp
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1107596" aria-controls="comment-profile-preview-content-1107596" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="eftehassanpp profile details">
      eftehassanpp
      
    </button>
    <div id="comment-profile-preview-content-1107596" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/eftehassanpp" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      eftehassanpp
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: eftehassanpp" aria-pressed="false">Follow</button>
</div>
  <div class="color-base-70">
    Full stack Web Developer
  </div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2023-11-21T21:33:36Z" class="date">Nov 21, 2023</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2023-11-21T21:37:14Z" class=date-short-year>
    Nov 21 &#39;23
  </time>

    <span class="hidden m:inline-block">&bull; Edited on <time datetime="2023-11-21T21:37:49Z" class="date-no-year">Nov 21</time></span>
    <span class="m:hidden">&bull; Edited</span>
</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1107596" aria-controls="comment-dropdown-1107596" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="anqysk9wz3k463ox4nph62xear0d3p4w" class="crayons-icon pointer-events-none"><title id="anqysk9wz3k463ox4nph62xear0d3p4w">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1107596" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to eftehassanpp&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="1215611" data-action="settings-button" data-path="https://dev.to/eftehassanpp/comment/2b0bm/settings" aria-label="Go to eftehassanpp&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="1215611">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="1107596"
                data-comment-url="https://dev.to/eftehassanpp/comment/2b0bm"
                aria-label="Hide eftehassanpp&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/eftehassanpp/comment/2b0bm/mod" aria-label="Moderate eftehassanpp&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm" aria-label="Report eftehassanpp&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>
<strong>import json</strong><br>
<strong>DEBUG = json.loads(os.getenv("DEBUG"))<br>
if DEBUG:<br>
    print("Debugging")</strong></p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-1107596"
    data-comment-id="1107596"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahjjbveswr6gcaqryfz4gyd2zgdwm4ze" class="crayons-icon reaction-icon not-reacted"><title id="ahjjbveswr6gcaqryfz4gyd2zgdwm4ze">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="abwchupp63so33156spria10r4l8m637" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="abwchupp63so33156spria10r4l8m637">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count"></span><span class="reactions-label hidden m:inline-block"></span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="1107596"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-1107596"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3k1um56f8mzdqx2wg98m4ysf5jotnf5" class="crayons-icon reaction-icon not-reacted"><title id="a3k1um56f8mzdqx2wg98m4ysf5jotnf5">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a90ink3joapm9ddh1hq32wcrnt0gvn71" class="crayons-icon expanded"><title id="a90ink3joapm9ddh1hq32wcrnt0gvn71">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a2qx85oskkj1aic7osf7czppfjrosxg3" class="crayons-icon collapsed"><title id="a2qx85oskkj1aic7osf7czppfjrosxg3">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-274947"
    class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    "
    data-comment-id="274947"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin"
    data-comment-author-id="230500"
    data-content-user-id="230500">
    <a name="comment-fgin" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/anshsaini" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg" alt="anshsaini profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/anshsaini" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Ansh Saini
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-274947" aria-controls="comment-profile-preview-content-274947" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Ansh Saini profile details">
      Ansh Saini
      
    </button>
    <div id="comment-profile-preview-content-274947" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #aaa1e0; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/anshsaini" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Ansh Saini
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Ansh Saini" aria-pressed="false">Follow</button>
</div>
  <div class="color-base-70">
    Here to share my knowledge and learn new things, then share those as well.
  </div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            New Delhi, India
          </div>
        </li>
          <li>
            <div class="key">
              Education
            </div>
            <div class="value">
              Bachelor&#39;s Degree in Computer Science
            </div>
          </li>
          <li>
            <div class="key">
              Work
            </div>
            <div class="value">
              Software Development Manager at Suraasa
            </div>
          </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2019-09-16T11:14:42Z" class="date">Sep 16, 2019</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-19T18:08:31Z" class=date-short-year>
    Sep 19 &#39;19
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-274947" aria-controls="comment-dropdown-274947" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ajnrdgcw29lhl494uqrcvs642eq8pcfs" class="crayons-icon pointer-events-none"><title id="ajnrdgcw29lhl494uqrcvs642eq8pcfs">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-274947" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Ansh Saini&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="230500" data-action="settings-button" data-path="https://dev.to/anshsaini/comment/fgin/settings" aria-label="Go to Ansh Saini&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="230500">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="274947"
                data-comment-url="https://dev.to/anshsaini/comment/fgin"
                aria-label="Hide Ansh Saini&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/anshsaini/comment/fgin/mod" aria-label="Moderate Ansh Saini&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/anshsaini/comment/fgin" aria-label="Report Ansh Saini&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>

</body></html>

        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-274947"
    data-comment-id="274947"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ajn1movjhp9pjktahx5eie34nb5xkz92" class="crayons-icon reaction-icon not-reacted"><title id="ajn1movjhp9pjktahx5eie34nb5xkz92">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="afu01rt9305glx5lva9zn1eoy3gmcvv8" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="afu01rt9305glx5lva9zn1eoy3gmcvv8">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">2</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="274947"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-274947"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="asi6g1r8jhe0pamnlr7xyglvrmazj0ta" class="crayons-icon reaction-icon not-reacted"><title id="asi6g1r8jhe0pamnlr7xyglvrmazj0ta">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a937zwu2zlm2i1loif46c4ce0g8yvgeb" class="crayons-icon expanded"><title id="a937zwu2zlm2i1loif46c4ce0g8yvgeb">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="atrycgt3bqhom1hcs1p3jm4bkt5ix4ra" class="crayons-icon collapsed"><title id="atrycgt3bqhom1hcs1p3jm4bkt5ix4ra">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-274987"
    class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    "
    data-comment-id="274987"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb"
    data-comment-author-id="108601"
    data-content-user-id="108601">
    <a name="comment-fgkb" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/nicolaerario" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" alt="nicolaerario profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/nicolaerario" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Nicola Erario
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-274987" aria-controls="comment-profile-preview-content-274987" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Nicola Erario profile details">
      Nicola Erario
      
    </button>
    <div id="comment-profile-preview-content-274987" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #160533; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/nicolaerario" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Nicola Erario
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Nicola Erario" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            Italy 🇮🇹 
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-10-18T15:20:33Z" class="date">Oct 18, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-19T19:03:55Z" class=date-short-year>
    Sep 19 &#39;19
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-274987" aria-controls="comment-dropdown-274987" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ascp2zgq843l3hjiwbkueo1hyk2e9y4r" class="crayons-icon pointer-events-none"><title id="ascp2zgq843l3hjiwbkueo1hyk2e9y4r">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-274987" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Nicola Erario&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="108601" data-action="settings-button" data-path="https://dev.to/nicolaerario/comment/fgkb/settings" aria-label="Go to Nicola Erario&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="108601">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="274987"
                data-comment-url="https://dev.to/nicolaerario/comment/fgkb"
                aria-label="Hide Nicola Erario&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/nicolaerario/comment/fgkb/mod" aria-label="Moderate Nicola Erario&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb" aria-label="Report Nicola Erario&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body>
<p>Sure! After time spent to True this, False that... and your app lives of it’s own life </p>

</body></html>

        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-274987"
    data-comment-id="274987"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a90c9akrxlwhzqlm6zbh2cl437mm8m4w" class="crayons-icon reaction-icon not-reacted"><title id="a90c9akrxlwhzqlm6zbh2cl437mm8m4w">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7u21cjq73ezwmhylwvn3maoxmjb805x" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a7u21cjq73ezwmhylwvn3maoxmjb805x">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">2</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="274987"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-274987"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aqbnn7m38ze35s566cpzbxp8zc67xkyj" class="crayons-icon reaction-icon not-reacted"><title id="aqbnn7m38ze35s566cpzbxp8zc67xkyj">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ab4azljunvkclho839543mrgdhe8uanf" class="crayons-icon expanded"><title id="ab4azljunvkclho839543mrgdhe8uanf">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a18zu1yfzvcynrxsx4j1npp6npq3sdl7" class="crayons-icon collapsed"><title id="a18zu1yfzvcynrxsx4j1npp6npq3sdl7">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-712982"
    class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    "
    data-comment-id="712982"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia"
    data-comment-author-id="201500"
    data-content-user-id="201500">
    <a name="comment-1eeia" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/guettli" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg" alt="guettli profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/guettli" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Thomas Güttler
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-712982" aria-controls="comment-profile-preview-content-712982" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Thomas Güttler profile details">
      Thomas Güttler
      
    </button>
    <div id="comment-profile-preview-content-712982" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #002a9e; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/guettli" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Thomas Güttler
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas Güttler&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Thomas Güttler" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2019-07-25T13:33:46Z" class="date">Jul 25, 2019</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2021-05-13T19:37:19Z" class=date-short-year>
    May 13 &#39;21
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-712982" aria-controls="comment-dropdown-712982" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7alnuoz5ampzvua5h7ww511cbk31t1c" class="crayons-icon pointer-events-none"><title id="a7alnuoz5ampzvua5h7ww511cbk31t1c">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-712982" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Thomas Güttler&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="201500" data-action="settings-button" data-path="https://dev.to/guettli/comment/1eeia/settings" aria-label="Go to Thomas Güttler&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="201500">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="712982"
                data-comment-url="https://dev.to/guettli/comment/1eeia"
                aria-label="Hide Thomas Güttler&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/guettli/comment/1eeia/mod" aria-label="Moderate Thomas Güttler&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/guettli/comment/1eeia" aria-label="Report Thomas Güttler&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Don't ask my why the author did not accept my PR: <a href="https://github.com/theskumar/python-dotenv/pull/293/files" rel="nofollow noopener noreferrer" target="_blank">github.com/theskumar/python-dotenv...</a></p>

<h3>
  <a name="converting-types" href="#converting-types">
  </a>
  Converting types
</h3>

<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>

<p>Example:<br>
</p>

<div class="highlight js-code-highlight">
<pre class="highlight python"><code><span class="kn">from</span> <span class="n">distutils.util</span> <span class="kn">import</span> <span class="n">strtobool</span>
<span class="n">DEBUG</span> <span class="o">=</span> <span class="nf">bool</span><span class="p">(</span><span class="nf">strtobool</span><span class="p">(</span><span class="n">os</span><span class="p">.</span><span class="nf">getenv</span><span class="p">(</span><span class="sh">'</span><span class="s">DEBUG</span><span class="sh">'</span><span class="p">,</span> <span class="sh">'</span><span class="s">True</span><span class="sh">'</span><span class="p">)))</span>
</code></pre>
<div class="highlight__panel js-actions-panel">
<div class="highlight__panel-action js-fullscreen-code-action">
    <svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewbox="0 0 24 24" class="highlight-action crayons-icon highlight-action--fullscreen-on"><title>Enter fullscreen mode</title>
    <path d="M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z"></path>
</svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewbox="0 0 24 24" class="highlight-action crayons-icon highlight-action--fullscreen-off"><title>Exit fullscreen mode</title>
    <path d="M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z"></path>
</svg>

</div>
</div>
</div>




        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-712982"
    data-comment-id="712982"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a1mk97ycs93jegn3xavxhb8xfgsfkw3d" class="crayons-icon reaction-icon not-reacted"><title id="a1mk97ycs93jegn3xavxhb8xfgsfkw3d">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amicadhcf0ecg45qix2h8bneakx329li" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="amicadhcf0ecg45qix2h8bneakx329li">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">4</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="712982"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-712982"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aix6zq952ei8477ykobai8errhmtgk28" class="crayons-icon reaction-icon not-reacted"><title id="aix6zq952ei8477ykobai8errhmtgk28">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="at7u3o4n8y9ewox1cowczmwqf7t9xj8e" class="crayons-icon expanded"><title id="at7u3o4n8y9ewox1cowczmwqf7t9xj8e">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aqqgamrqupo07w83avfsaypdfc38f2h8" class="crayons-icon collapsed"><title id="aqqgamrqupo07w83avfsaypdfc38f2h8">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-1322245"
    class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    "
    data-comment-id="1322245"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf"
    data-comment-author-id="2562290"
    data-content-user-id="2562290">
    <a name="comment-2n5pf" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/derrick_k_429f36beeddff99" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg" alt="derrick_k_429f36beeddff99 profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/derrick_k_429f36beeddff99" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      derrick k
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1322245" aria-controls="comment-profile-preview-content-1322245" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="derrick k profile details">
      derrick k
      
    </button>
    <div id="comment-profile-preview-content-1322245" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/derrick_k_429f36beeddff99" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      derrick k
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: derrick k" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2024-12-12T14:19:12Z" class="date">Dec 12, 2024</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2025-04-19T04:12:37Z" class=date-short-year>
    Apr 19 &#39;25
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1322245" aria-controls="comment-dropdown-1322245" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ah7e12qgpvpgv7lg5h12h1hg8gsc35dy" class="crayons-icon pointer-events-none"><title id="ah7e12qgpvpgv7lg5h12h1hg8gsc35dy">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1322245" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to derrick k&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="2562290" data-action="settings-button" data-path="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings" aria-label="Go to derrick k&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="2562290">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="1322245"
                data-comment-url="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf"
                aria-label="Hide derrick k&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod" aria-label="Moderate derrick k&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf" aria-label="Report derrick k&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>I agree, it works perfectly</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-1322245"
    data-comment-id="1322245"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a6w8iq5f90v5v8mu1tvdl5prq64nfxzn" class="crayons-icon reaction-icon not-reacted"><title id="a6w8iq5f90v5v8mu1tvdl5prq64nfxzn">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a2jrd7kzxnp7are2sy91mt0g2y1op9e2" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a2jrd7kzxnp7are2sy91mt0g2y1op9e2">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count">1</span><span class="reactions-label hidden m:inline-block">&nbsp;like</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="1322245"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-1322245"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a71tibt5ws2dqqc3quhiva4b5wgoo31c" class="crayons-icon reaction-icon not-reacted"><title id="a71tibt5ws2dqqc3quhiva4b5wgoo31c">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open>
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="abi2ffrim2fmctcrxzumsbpv3ppxw8hx" class="crayons-icon expanded"><title id="abi2ffrim2fmctcrxzumsbpv3ppxw8hx">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="atcipprtb6yh2byyphfnhsbchu8x18k0" class="crayons-icon collapsed"><title id="atcipprtb6yh2byyphfnhsbchu8x18k0">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div
    id="comment-node-1228782"
    class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    "
    data-comment-id="1228782"
    data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim"
    data-comment-author-id="1625827"
    data-content-user-id="1625827">
    <a name="comment-2hnim" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/niceguydave" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg" alt="niceguydave profile image" loading="lazy" />
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/niceguydave" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      David Talbot
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1228782" aria-controls="comment-profile-preview-content-1228782" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="David Talbot profile details">
      David Talbot
      
    </button>
    <div id="comment-profile-preview-content-1228782" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/niceguydave" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg" class="crayons-avatar__image" alt="" loading="lazy" />
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      David Talbot
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: David Talbot" aria-pressed="false">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2024-06-14T12:03:32Z" class="date">Jun 14, 2024</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">&bull;</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2024-09-04T09:09:28Z" class=date-short-year>
    Sep 4 &#39;24
  </time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1228782" aria-controls="comment-dropdown-1228782" aria-expanded="false"
      class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon "
      aria-label="Toggle dropdown menu" aria-haspopup="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aclks2g2l2bow740sya6k4kff7mjsiuv" class="crayons-icon pointer-events-none"><title id="aclks2g2l2bow740sya6k4kff7mjsiuv">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1228782" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to David Talbot&#39;s comment" data-no-instant>Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="1625827" data-action="settings-button" data-path="https://dev.to/niceguydave/comment/2hnim/settings" aria-label="Go to David Talbot&#39;s comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="1625827">
              <button
                class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment"
                data-hide-type="hide"
                data-comment-id="1228782"
                data-comment-url="https://dev.to/niceguydave/comment/2hnim"
                aria-label="Hide David Talbot&#39;s comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/niceguydave/comment/2hnim/mod" aria-label="Moderate David Talbot&#39;s comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/niceguydave/comment/2hnim" aria-label="Report David Talbot&#39;s comment as abusive or violating our code of conduct and/or terms and conditions"></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div
          class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>This is really helpful, thanks. Agreed—it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button
    class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button"
    id="button-for-comment-1228782"
    data-comment-id="1228782"
    aria-label="like"
    data-tracking-name="comment_heart_button">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="al2238nmtzvbhzqi2yywrpxgjdejg8pi" class="crayons-icon reaction-icon not-reacted"><title id="al2238nmtzvbhzqi2yywrpxgjdejg8pi">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="apba72bjxcxsgi9yze6l7sl4vednujll" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="apba72bjxcxsgi9yze6l7sl4vednujll">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count"></span><span class="reactions-label hidden m:inline-block"></span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button
        class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex"
        data-comment-id="1228782"
        data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim"
        data-tracking-name="comment_reply_button"
        data-testid="reply-button-1228782"
        rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a310ex3qenwsd4ez2fili98qg92olabo" class="crayons-icon reaction-icon not-reacted"><title id="a310ex3qenwsd4ez2fili98qg92olabo">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>


  </div>
    </details>

    </div>

  </section>

  <div class="py-6">
    <nav class="fs-s align-center block" aria-label="Conduct controls">
  <a href="/code-of-conduct" class="crayons-link crayons-link--secondary">Code of Conduct</a>
  <span class="opacity-25 px-2" role="presentation">&bull;</span>
  <a href="/report-abuse" class="crayons-link crayons-link--secondary">Report abuse</a>
</nav>

  </div>
</div>

<div class="fullscreen-code js-fullscreen-code"></div>

<script>
    // Listen for resize events and match them to the iframe
  window.addEventListener('message', function(event) {
    if (event.origin.startsWith('https://platform.twitter.com')) {
        var iframes = document.getElementsByTagName('iframe');
        for (var i = 0; i < iframes.length; i++) {
          if (event.source === iframes[i].contentWindow) { // iframes which match the event
            var iframe = iframes[i];
            var data = event.data['twttr.embed'];
            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {
              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';
              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';
              iframe.style.width = data['params']['0']['width'] + 'px !important';
            }
            break;
          }
        }
    }
}, false);

// Legacy support: We have shifted up how we render tweets, but still need to render
// the old way for old embed. This could eventually be removed.
var videoPreviews = document.getElementsByClassName("ltag__twitter-tweet__media__video-wrapper");
[].forEach.call(videoPreviews, function(el) {
  el.onclick = function(e) {
    var divHeight = el.offsetHeight;
    el.style.maxHeight = divHeight + "px";
    el.getElementsByClassName("ltag__twitter-tweet__media--video-preview")[0].style.display = "none";
    el.getElementsByClassName("ltag__twitter-tweet__video")[0].style.display = "block";
    el.getElementsByTagName("video")[0].play();
  }
});
var tweets = document.getElementsByClassName("ltag__twitter-tweet__main");
[].forEach.call(tweets, function(tweet){
  tweet.onclick = function(e) {
    if (e.target.nodeName == "A" || e.target.parentElement.nodeName == "A") {
      return;
    }
    window.open(tweet.dataset.url,"_blank");
  }
});

  
  var waitingOnPodcast = setInterval(function() {
  if (typeof initializePodcastPlayback !== 'undefined') {
    initializePodcastPlayback();
    clearInterval(waitingOnPodcast);
  }
}, 1);

  
  function activateRunkitTags() {
  if (!areAnyRunkitTagsPresent())
    return

  var checkRunkit = setInterval(function() {
    try {
      dynamicallyLoadRunkitLibrary()

      if (typeof(RunKit) === 'undefined') {
        return
      }

      replaceTagContentsWithRunkitWidget()
      clearInterval(checkRunkit);
    } catch(e) {
      console.error(e);
      clearInterval(checkRunkit);
    }
  }, 200);
}

function isRunkitTagAlreadyActive(runkitTag) {
  return runkitTag.querySelector("iframe") !== null;
};

function areAnyRunkitTagsPresent() {
  var presentRunkitTags = document.getElementsByClassName("runkit-element");

  return presentRunkitTags.length > 0
}

function replaceTagContentsWithRunkitWidget() {
  var targets = document.getElementsByClassName("runkit-element");
  for (var i = 0; i < targets.length; i++) {
    if (isRunkitTagAlreadyActive(targets[i])) {
      continue;
    }

    var wrapperContent = targets[i].textContent;
    if (/^(<iframe src)/.test(wrapperContent) === false) {
      if (targets[i].children.length > 0) {
        var preamble = targets[i].children[0].textContent;
        var content = targets[i].children[1].textContent;
        targets[i].innerHTML = "";
        var notebook = RunKit.createNotebook({
          element: targets[i],
          source: content,
          preamble: preamble
        });
      }
    }
  }
};

function dynamicallyLoadRunkitLibrary() {
  if (typeof(dynamicallyLoadScript) === "undefined")
    return

  dynamicallyLoadScript("//embed.runkit.com")
}

activateRunkitTags();

</script>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<div id="hide-comments-modal" class="hidden">
  <form id="hide-comments-modal__form" class="hide-comments-modal__form" data-type="json" action="/comments/hide" accept-charset="UTF-8" data-remote="true" method="post"><input name="utf8" type="hidden" value="&#x2713;" autocomplete="off" /><input type="hidden" name="_method" value="patch" autocomplete="off" /><input type="hidden" name="authenticity_token" value="hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ" autocomplete="off" />
    <div class="hide-comments-modal__content">
      <p class="pb-2">
        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id="hide-comments-modal__comment-permalink" href="#">permalink</a>.
      </p>
      <label class="crayons-field crayons-field--checkbox my-2">
        <input name="hide_children" type="hidden" value="0" autocomplete="off" /><input class="hide_children crayons-checkbox" type="checkbox" value="1" name="hide_children" id="hide_children" />
        <p class="crayons-field__label">Hide child comments as well</p>
      </label>
      <p class="pb-4 pt-2">
        <button type="submit" class="crayons-btn">
          Confirm
        </button>
      </p>
    </div>
</form>  <p class="fs-s color-base-60">For further actions, you may consider blocking this person and/or <a id="hide-comments-modal__report-link" href="/report-abuse">reporting abuse</a></p>
</div>


    <div id="runtime-banner-container"></div>
    <div id="i18n-translations" data-translations="{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Following&quot;,&quot;like&quot;:&quot;Like&quot;,&quot;loading&quot;:&quot;loading...&quot;,&quot;reaction&quot;:&quot;Reaction&quot;,&quot;report_abuse&quot;:&quot;Report abuse&quot;,&quot;search&quot;:&quot;Search&quot;,&quot;success_settings&quot;:&quot;Successfully updated settings.&quot;,&quot;search_placeholder&quot;:&quot;Search...&quot;,&quot;search_find_related_posts&quot;:&quot;Find related posts...&quot;,&quot;search_powered_by&quot;:&quot;Powered by Algolia&quot;,&quot;search_submit_search&quot;:&quot;Submit search for advanced filtering.&quot;,&quot;search_displaying_recommendations&quot;:&quot;Displaying Algolia Recommendations — Start typing to search&quot;,&quot;article_form_save_changes&quot;:&quot;Save changes&quot;,&quot;article_form_schedule&quot;:&quot;Schedule&quot;,&quot;article_form_publish&quot;:&quot;Publish&quot;,&quot;article_form_loading_preview&quot;:&quot;Loading preview&quot;,&quot;article_form_preview_loaded&quot;:&quot;Preview loaded&quot;,&quot;comments_preview&quot;:&quot;Preview&quot;,&quot;comments_continue_editing&quot;:&quot;Continue editing&quot;,&quot;survey_enter_response&quot;:&quot;Enter your response here...&quot;,&quot;survey_thank_you_response&quot;:&quot;Thank you for your response.&quot;,&quot;survey_thank_you_completing&quot;:&quot;Thank you for completing the survey!&quot;,&quot;dashboard_analytics_readers&quot;:&quot;Readers&quot;,&quot;dashboard_analytics_comments&quot;:&quot;Comments&quot;,&quot;dashboard_ana

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Response Headers

{
  "accept-ranges": "bytes",
  "access-control-allow-origin": "*",
  "age": "88570",
  "cache-control": "public, no-cache",
  "content-encoding": "gzip",
  "content-length": "20395",
  "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to",
  "content-type": "text/html; charset=utf-8",
  "date": "Sat, 21 Mar 2026 10:45:42 GMT",
  "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
  "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
  "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
  "referrer-policy": "strict-origin-when-cross-origin",
  "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
  "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
  "server": "Heroku",
  "strict-transport-security": "max-age=31557600",
  "vary": "Accept-Encoding, X-Loggedin",
  "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
  "x-accel-expires": "172800",
  "x-cache": "HIT, HIT",
  "x-cache-hits": "26, 1",
  "x-content-type-options": "nosniff",
  "x-download-options": "noopen",
  "x-permitted-cross-domain-policies": "none",
  "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
  "x-runtime": "0.231911",
  "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100039-CHI",
  "x-timer": "S1774089943.754386,VS0,VE2",
  "x-xss-protection": "0"
}

Request Options

{
  "proxy": {
    "type": "datacenter"
  },
  "scraper_options": {
    "impersonate": "chrome"
  },
  "url": "https://dev.to/nicolaerario/comment/fe1e"
}

No network requests captured.

Network capture is only available for browser-based scrapers (Playwright, Scrapling).

Protections

CDN

Fastly

Info

Fastly delivery headers were detected.

Impact. Edge behavior may affect headers, caching, and request handling.

Recommendation. Use this as routing context rather than a direct block signal.

Evidence

  • X-Served-By header present

CDN

Varnish

Info

Varnish caching markers were detected.

Impact. You may be seeing a cache or edge layer instead of direct origin behavior.

Recommendation. Interpret this as edge context and combine it with stronger protection findings if present.

Evidence

  • Via header referenced Varnish

Structured Metadata

Open Graph
[
  {
    "namespace": {
      "og": "http://ogp.me/ns#"
    },
    "properties": [
      [
        "og:type",
        "article"
      ],
      [
        "og:title",
        "Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables"
      ],
      [
        "og:description",
        "How to use environment variables to keep secure keys out of your code."
      ],
      [
        "og:site_name",
        "DEV Community"
      ],
      [
        "og:url",
        "https://dev.to/nicolaerario/comment/fe1e"
      ],
      [
        "og:title",
        "How do you manage Boolean with python-dotenv? I... \u2014 DEV Community"
      ],
      [
        "og:image",
        "https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"
      ]
    ]
  }
]

Scraper Response Data

Response payload
{
  "content": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>\n    \n    <meta name=\"description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta name=\"keywords\" content=\"software, coding, development, engineering, inclusive, community\">\n\n    <meta property=\"og:type\" content=\"article\" />\n    <meta property=\"og:title\" content=\"Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables\" />\n    <meta property=\"og:description\" content=\"How to use environment variables to keep secure keys out of your code.\" />\n    <meta property=\"og:site_name\" content=\"DEV Community\" />\n    <meta name=\"twitter:card\" content=\"summary_large_image\">\n    <meta name=\"twitter:site\" content=\"@thepracticaldev\">\n    <meta name=\"twitter:creator\" content=\"@\">\n    <meta name=\"twitter:title\" content=\"Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta name=\"twitter:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n\n      <link rel=\"canonical\" href=\"https://dev.to/nicolaerario/comment/fe1e\" />\n      <meta property=\"og:url\" content=\"https://dev.to/nicolaerario/comment/fe1e\" />\n      <meta property=\"og:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\" />\n      <meta name=\"twitter:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta property=\"og:image\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n      <meta name=\"twitter:image:src\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n\n      <meta name=\"last-updated\" content=\"2026-03-20 10:09:32 UTC\">\n      <meta name=\"user-signed-in\" content=\"false\">\n      <meta name=\"head-cached-at\" content=\"1774001372\">\n      <meta name=\"environment\" content=\"production\">\n      <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"main-minimal-stylesheet\" />\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"main-views-stylesheet\" />\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"main-crayons-stylesheet\" />\n\n      <script src=\"https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js\" defer=\"defer\"></script>\n\n        <meta name=\"search-script\" content=\"https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js\">\n      <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, viewport-fit=cover\">\n      <link rel=\"icon\" type=\"image/x-icon\" href=\"https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" />\n      <link rel=\"apple-touch-icon\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"152x152\" href=\"https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"167x167\" href=\"https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"192x192\" />\n      <link href=\"https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"128x128\" />\n      <meta name=\"apple-mobile-web-app-title\" content=\"dev.to\">\n      <meta name=\"application-name\" content=\"dev.to\">\n      <meta name=\"theme-color\" content=\"#ffffff\" media=\"(prefers-color-scheme: light)\">\n      <meta name=\"theme-color\" content=\"#000000\" media=\"(prefers-color-scheme: dark)\">\n      <link rel=\"search\" href=\"https://dev.to/open-search.xml\" type=\"application/opensearchdescription+xml\" title=\"DEV Community\" />\n\n      <meta property=\"forem:name\" content=\"DEV Community\" />\n      <meta property=\"forem:logo\" content=\"https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" />\n      <meta property=\"forem:domain\" content=\"dev.to\" />\n    \n  </head>\n      <body\n        class=\"sans-serif-article-body default-header\"\n        data-user-status=\"logged-out\"\n        data-is-root-subforem=\"false\"\n          data-subforem-id=\"1\"\n        data-side-nav-visible=\"true\"\n        data-community-name=\"DEV Community\"\n        data-subscription-icon=\"https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png\"\n        data-locale=\"en\"\n        data-honeybadger-key=\"hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr\"\n        data-deployed-at=\"2026-03-19T20:49:25Z\"\n        data-latest-commit-id=\"f47ae62cb2f25a529b1137abf7975d0e86324bf1\"\n        data-ga-tracking=\"UA-71991109-1\"\n        data-cookie-banner-user-context=\"logged_out_only\"\n        data-cookie-banner-platform-context=\"off\"\n        data-algolia-id=\"PRSOBFP46H\"\n        data-algolia-search-key=\"9aa7d31610cba78851c9b1f63776a9dd\"\n        data-algolia-display=\"true\"\n        data-dynamic-url-component=\"bmar11\"\n        data-ga4-tracking-id=\"G-TYEM8Y3JN3\">\n        \n        <script>\n          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {\n            document.body.classList.add(\"hidden-shell\");\n          }\n            if (new Date() > new Date(\"2026-02-04T09:00:00-05:00\")) {\n              document.body.dataset.sideNavVisible = \"false\";\n            } \n        </script>\n\n        <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"secondary-minimal-stylesheet\" />\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"secondary-views-stylesheet\" />\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"secondary-crayons-stylesheet\" />\n\n        <div id=\"body-styles\">\n          <style>\n            :root {\n              --accent-brand-lighter-rgb: 80, 99, 301;\n              --accent-brand-rgb: 59, 73, 223;\n              --accent-brand-darker-rgb: 47, 58, 178;\n            }\n          </style>\n        </div>\n        <div id=\"audiocontent\" data-podcast=\"\">\n          \n        </div>\n        <div class=\"navigation-progress\" id=\"navigation-progress\"></div>\n\n<header id=\"topbar\" class=\"crayons-header topbar print-hidden\">\n  <span id=\"route-change-target\" tabindex=\"-1\"></span>\n  <a href=\"#main-content\" class=\"skip-content-link\">Skip to content</a>\n  <div class=\"crayons-header__container\">\n    <span class=\"inline-block m:hidden \">\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger mx-2\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\" class=\"crayons-icon\"><title id=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\">Navigation menu</title>\n    <path d=\"M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z\"></path>\n</svg>\n\n      </button>\n    </span>\n    <a href=\"/\" class=\"site-logo\" aria-label=\"DEV Community Home\" >\n    <img class=\"site-logo__img\"\n         src=\"https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png\"\n         style=\"aspect-ratio: 10 / 8\"\n         alt=\"DEV Community\">\n</a>\n\n\n    <div class=\"crayons-header--search js-search-form\" id=\"header-search\">\n      <form accept-charset=\"UTF-8\" method=\"get\" action=\"/search\" role=\"search\">\n        <div class=\"crayons-fields crayons-fields--horizontal\">\n          <div class=\"crayons-field flex-1 relative\">\n            <input id=\"search-input\" class=\"crayons-header--search-input crayons-textfield js-search-input\" type=\"text\" id=\"nav-search\" name=\"q\" placeholder=\"Find related posts...\" autocomplete=\"off\" />\n            <button type=\"submit\" aria-label=\"Search\" class=\"c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\">Search</title>\n    <path d=\"M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z\"></path>\n</svg>\n\n            </button>\n\n            <a class=\"crayons-header--search-brand-indicator\" href=\"https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral\" target=\"_blank\" rel=\"noopener noreferrer\">\n                Powered by Algolia\n                <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"Layer_1\" width=\"24\" height=\"24\" viewBox=\"0 0 500 500.34\" role=\"img\" aria-labelledby=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\">Search</title>\n  <defs></defs><path class=\"cls-1\" d=\"M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z\"></path>\n</svg>\n\n            </a>\n          </div>\n        </div>\n      </form>\n    </div>\n\n    <div class=\"flex items-center h-100 ml-auto\">\n        <div class=\"flex\" id=\"authentication-top-nav-actions\">\n          <span class=\"hidden m:block\">\n            <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"c-link c-link--block mr-2 whitespace-nowrap ml-auto\" data-no-instant>\n              Log in\n            </a>\n          </span>\n\n          <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" data-tracking-id=\"ca_top_nav\" data-tracking-source=\"top_navbar\" class=\"c-cta c-cta--branded whitespace-nowrap mr-2\" data-no-instant>\n            Create account\n          </a>\n        </div>\n    </div>\n  </div>\n</header>\n\n<div class=\"hamburger\">\n  <div class=\"hamburger__content\">\n    <header class=\"hamburger__content__header\">\n      <h2 class=\"fs-l fw-bold flex-1 break-word lh-tight\">DEV Community</h2>\n\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger shrink-0\" aria-label=\"Close\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7jqca81wlh4sunhyocm20yteah4aqdu\" aria-hidden=\"true\" class=\"crayons-icon c-btn__icon\"><title id=\"a7jqca81wlh4sunhyocm20yteah4aqdu\">Close</title><path d=\"M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z\"></path></svg>\n\n      </button>\n    </header>\n\n    <div class=\"p-2 js-navigation-links-container\" id=\"authentication-hamburger-actions\">\n    </div>\n  </div>\n  <div class=\"hamburger__overlay js-hamburger-trigger\"></div>\n</div>\n\n\n        <div id=\"active-broadcast\" class=\"broadcast-wrapper\"></div>\n<div id=\"page-content\" class=\"wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760\" data-current-page=\"comments-index\">\n  <div id=\"page-content-inner\" data-internal-nav=\"false\">\n    <div id=\"page-route-change\" class=\"screen-reader-only\" aria-live=\"polite\" aria-atomic=\"true\"></div>\n\n    <script src=\"https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js\" defer=\"defer\"></script>\n\n  \n<script src=\"https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js\" defer=\"defer\"></script>\n\n<div class=\"crayons-layout crayons-layout--limited-l gap-0\" data-follow-button-container=\"true\">\n    <span id=\"comment-article-indicator\" data-article-id=\"172117\"></span>\n\n    <div id=\"response-templates-data\" class=\"hidden\"></div>\n    <script src=\"https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js\" defer=\"defer\"></script>\n    <header class=\"p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0\">\n        <h1 class=\"crayons-subtitle-1 mb-4\">\n          <span class=\"fw-normal color-base-60\">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>\n        </h1>\n        <div class=\"flex\">\n          <a class=\"crayons-btn crayons-btn--outlined mr-2\" href=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5\">View post</a>\n        </div>\n    </header>\n\n\n  <section\n    class=\"crayons-card text-padding min-w-0 z-elevate\"\n    id=\"comments-container\"\n    data-commentable-id=\"172117\"\n    data-commentable-type=\"Article\"\n    data-commentable-author-id=\"102760\"\n    data-commentable-co-author-ids=\"\">\n\n\n    <div class=\"comments\" id=\"comment-trees-container\">\n              <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-0\n                    root\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"m:mx-1 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\" class=\"crayons-icon expanded\"><title id=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\" class=\"crayons-icon collapsed\"><title id=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-273144\"\n    class=\"\n      comment single-comment-node\n      \n      root\n      comment--deep-0\n      \n    \"\n    data-comment-id=\"273144\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\"\n    data-comment-author-id=\"108601\"\n    data-content-user-id=\"108601\">\n    <a name=\"comment-fe1e\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273144\" aria-controls=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:02:26Z\" class=date-short-year>\n    Sep 17 &#39;19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273144\" aria-controls=\"comment-dropdown-273144\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\" class=\"crayons-icon pointer-events-none\"><title id=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273144\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/settings\" aria-label=\"Go to Nicola Erario&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"273144\"\n                data-comment-url=\"https://dev.to/nicolaerario/comment/fe1e\"\n                aria-label=\"Hide Nicola Erario&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/mod\" aria-label=\"Moderate Nicola Erario&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Report Nicola Erario&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-273144\"\n    data-comment-id=\"273144\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3btu01xca2urgip0ej7lt2tshj6bs28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3btu01xca2urgip0ej7lt2tshj6bs28\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a207ojso91c7liu3pwqmlfkjddpc2zco\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a207ojso91c7liu3pwqmlfkjddpc2zco\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"273144\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-273144\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amu86j05tb5rto5dwbol17xfyeew32qd\" class=\"crayons-icon expanded\"><title id=\"amu86j05tb5rto5dwbol17xfyeew32qd\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"agcra525od8yaymvu4prqj30npmizg4n\" class=\"crayons-icon collapsed\"><title id=\"agcra525od8yaymvu4prqj30npmizg4n\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-273163\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \"\n    data-comment-id=\"273163\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\"\n    data-comment-author-id=\"102760\"\n    data-content-user-id=\"102760\">\n    <a name=\"comment-fe27\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/jamestimmins\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" alt=\"jamestimmins profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/jamestimmins\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      James Timmins\n    </span>\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -mr-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273163\" aria-controls=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"James Timmins profile details\">\n      James Timmins\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/jamestimmins\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      James Timmins\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: James Timmins\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-09-19T16:58:25Z\" class=\"date\">Sep 19, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -ml-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:29:14Z\" class=date-short-year>\n    Sep 17 &#39;19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273163\" aria-controls=\"comment-dropdown-273163\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\" class=\"crayons-icon pointer-events-none\"><title id=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273163\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to James Timmins&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"102760\" data-action=\"settings-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/settings\" aria-label=\"Go to James Timmins&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"102760\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"273163\"\n                data-comment-url=\"https://dev.to/jamestimmins/comment/fe27\"\n                aria-label=\"Hide James Timmins&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/mod\" aria-label=\"Moderate James Timmins&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Report James Timmins&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>\n\n<ol>\n<li>Explicitly check for a string value. DEBUG = (os.getenv(\"DEBUG\") == 'true')</li>\n<li>Cast the val to a boolean DEBUG = bool(os.getenv(\"DEBUG\")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>\n<li>Use a more fully-featured package like <a href=\"https://github.com/joke2k/django-environ\" rel=\"nofollow\">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>\n</ol>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-273163\"\n    data-comment-id=\"273163\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"acgeuroqpao89v1gqag5tnag1lzjbopd\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"acgeuroqpao89v1gqag5tnag1lzjbopd\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"alpwyiy7hd86mwy98dvfifgf6axh83az\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"alpwyiy7hd86mwy98dvfifgf6axh83az\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"273163\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-273163\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\" class=\"crayons-icon expanded\"><title id=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\" class=\"crayons-icon collapsed\"><title id=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-359014\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \"\n    data-comment-id=\"359014\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\"\n    data-comment-author-id=\"119873\"\n    data-content-user-id=\"119873\">\n    <a name=\"comment-kb26\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/bhupesh\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" alt=\"bhupesh profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/bhupesh\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Bhupesh Varshney \ud83d\udc7e\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-359014\" aria-controls=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Bhupesh Varshney \ud83d\udc7e profile details\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </button>\n    <div id=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #0000bc; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/bhupesh\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney \ud83d\udc7e&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Bhupesh Varshney \ud83d\udc7e\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Email\n          </div>\n          <div class=\"value\">\n            <a href=\"mailto:\"></a>\n          </div>\n        </li>\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India \ud83c\uddee\ud83c\uddf3\n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-12-05T15:02:51Z\" class=\"date\">Dec 5, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2020-01-16T08:59:45Z\" class=date-short-year>\n    Jan 16 &#39;20\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-359014\" aria-controls=\"comment-dropdown-359014\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\" class=\"crayons-icon pointer-events-none\"><title id=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-359014\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Bhupesh Varshney \ud83d\udc7e&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"119873\" data-action=\"settings-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/settings\" aria-label=\"Go to Bhupesh Varshney \ud83d\udc7e&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"119873\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"359014\"\n                data-comment-url=\"https://dev.to/bhupesh/comment/kb26\"\n                aria-label=\"Hide Bhupesh Varshney \ud83d\udc7e&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/mod\" aria-label=\"Moderate Bhupesh Varshney \ud83d\udc7e&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" aria-label=\"Report Bhupesh Varshney \ud83d\udc7e&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<html><body>\n<p>thanks for this</p>\n\n</body></html>\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-359014\"\n    data-comment-id=\"359014\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"359014\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-359014\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7qkh3osze31p5tx1sa37ss9h410885k\" class=\"crayons-icon expanded\"><title id=\"a7qkh3osze31p5tx1sa37ss9h410885k\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ap76c9hto972y44k19vq49h1o4ipe73a\" class=\"crayons-icon collapsed\"><title id=\"ap76c9hto972y44k19vq49h1o4ipe73a\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-1107596\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \"\n    data-comment-id=\"1107596\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\"\n    data-comment-author-id=\"1215611\"\n    data-content-user-id=\"1215611\">\n    <a name=\"comment-2b0bm\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/eftehassanpp\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" alt=\"eftehassanpp profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/eftehassanpp\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      eftehassanpp\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1107596\" aria-controls=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"eftehassanpp profile details\">\n      eftehassanpp\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/eftehassanpp\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      eftehassanpp\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: eftehassanpp\" aria-pressed=\"false\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Full stack Web Developer\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2023-11-21T21:33:36Z\" class=\"date\">Nov 21, 2023</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2023-11-21T21:37:14Z\" class=date-short-year>\n    Nov 21 &#39;23\n  </time>\n\n    <span class=\"hidden m:inline-block\">&bull; Edited on <time datetime=\"2023-11-21T21:37:49Z\" class=\"date-no-year\">Nov 21</time></span>\n    <span class=\"m:hidden\">&bull; Edited</span>\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1107596\" aria-controls=\"comment-dropdown-1107596\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"anqysk9wz3k463ox4nph62xear0d3p4w\" class=\"crayons-icon pointer-events-none\"><title id=\"anqysk9wz3k463ox4nph62xear0d3p4w\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1107596\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to eftehassanpp&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1215611\" data-action=\"settings-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/settings\" aria-label=\"Go to eftehassanpp&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1215611\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"1107596\"\n                data-comment-url=\"https://dev.to/eftehassanpp/comment/2b0bm\"\n                aria-label=\"Hide eftehassanpp&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/mod\" aria-label=\"Moderate eftehassanpp&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Report eftehassanpp&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>\n<strong>import json</strong><br>\n<strong>DEBUG = json.loads(os.getenv(\"DEBUG\"))<br>\nif DEBUG:<br>\n    print(\"Debugging\")</strong></p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-1107596\"\n    data-comment-id=\"1107596\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abwchupp63so33156spria10r4l8m637\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"abwchupp63so33156spria10r4l8m637\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\"></span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"1107596\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-1107596\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\" class=\"crayons-icon expanded\"><title id=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2qx85oskkj1aic7osf7czppfjrosxg3\" class=\"crayons-icon collapsed\"><title id=\"a2qx85oskkj1aic7osf7czppfjrosxg3\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-274947\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \"\n    data-comment-id=\"274947\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\"\n    data-comment-author-id=\"230500\"\n    data-content-user-id=\"230500\">\n    <a name=\"comment-fgin\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/anshsaini\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" alt=\"anshsaini profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/anshsaini\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Ansh Saini\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274947\" aria-controls=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Ansh Saini profile details\">\n      Ansh Saini\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #aaa1e0; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/anshsaini\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Ansh Saini\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Ansh Saini\" aria-pressed=\"false\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Here to share my knowledge and learn new things, then share those as well.\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India\n          </div>\n        </li>\n          <li>\n            <div class=\"key\">\n              Education\n            </div>\n            <div class=\"value\">\n              Bachelor&#39;s Degree in Computer Science\n            </div>\n          </li>\n          <li>\n            <div class=\"key\">\n              Work\n            </div>\n            <div class=\"value\">\n              Software Development Manager at Suraasa\n            </div>\n          </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-09-16T11:14:42Z\" class=\"date\">Sep 16, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T18:08:31Z\" class=date-short-year>\n    Sep 19 &#39;19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274947\" aria-controls=\"comment-dropdown-274947\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\" class=\"crayons-icon pointer-events-none\"><title id=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274947\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Ansh Saini&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"230500\" data-action=\"settings-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/settings\" aria-label=\"Go to Ansh Saini&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"230500\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"274947\"\n                data-comment-url=\"https://dev.to/anshsaini/comment/fgin\"\n                aria-label=\"Hide Ansh Saini&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/mod\" aria-label=\"Moderate Ansh Saini&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" aria-label=\"Report Ansh Saini&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<html><body>\n<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>\n\n</body></html>\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-274947\"\n    data-comment-id=\"274947\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ajn1movjhp9pjktahx5eie34nb5xkz92\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ajn1movjhp9pjktahx5eie34nb5xkz92\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"274947\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-274947\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\" class=\"crayons-icon expanded\"><title id=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\" class=\"crayons-icon collapsed\"><title id=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-274987\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \"\n    data-comment-id=\"274987\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\"\n    data-comment-author-id=\"108601\"\n    data-content-user-id=\"108601\">\n    <a name=\"comment-fgkb\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274987\" aria-controls=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T19:03:55Z\" class=date-short-year>\n    Sep 19 &#39;19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274987\" aria-controls=\"comment-dropdown-274987\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\" class=\"crayons-icon pointer-events-none\"><title id=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274987\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/settings\" aria-label=\"Go to Nicola Erario&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"274987\"\n                data-comment-url=\"https://dev.to/nicolaerario/comment/fgkb\"\n                aria-label=\"Hide Nicola Erario&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/mod\" aria-label=\"Moderate Nicola Erario&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Report Nicola Erario&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<html><body>\n<p>Sure! After time spent to True this, False that... and your app lives of it\u2019s own life </p>\n\n</body></html>\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-274987\"\n    data-comment-id=\"274987\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"274987\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-274987\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab4azljunvkclho839543mrgdhe8uanf\" class=\"crayons-icon expanded\"><title id=\"ab4azljunvkclho839543mrgdhe8uanf\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\" class=\"crayons-icon collapsed\"><title id=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-712982\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \"\n    data-comment-id=\"712982\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\"\n    data-comment-author-id=\"201500\"\n    data-content-user-id=\"201500\">\n    <a name=\"comment-1eeia\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/guettli\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" alt=\"guettli profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/guettli\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Thomas G\u00fcttler\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-712982\" aria-controls=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Thomas G\u00fcttler profile details\">\n      Thomas G\u00fcttler\n      \n    </button>\n    <div id=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/guettli\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Thomas G\u00fcttler\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas G\u00fcttler&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Thomas G\u00fcttler\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-07-25T13:33:46Z\" class=\"date\">Jul 25, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2021-05-13T19:37:19Z\" class=date-short-year>\n    May 13 &#39;21\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-712982\" aria-controls=\"comment-dropdown-712982\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\" class=\"crayons-icon pointer-events-none\"><title id=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-712982\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Thomas G\u00fcttler&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"201500\" data-action=\"settings-button\" data-path=\"https://dev.to/guettli/comment/1eeia/settings\" aria-label=\"Go to Thomas G\u00fcttler&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"201500\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"712982\"\n                data-comment-url=\"https://dev.to/guettli/comment/1eeia\"\n                aria-label=\"Hide Thomas G\u00fcttler&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/guettli/comment/1eeia/mod\" aria-label=\"Moderate Thomas G\u00fcttler&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" aria-label=\"Report Thomas G\u00fcttler&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Don't ask my why the author did not accept my PR: <a href=\"https://github.com/theskumar/python-dotenv/pull/293/files\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">github.com/theskumar/python-dotenv...</a></p>\n\n<h3>\n  <a name=\"converting-types\" href=\"#converting-types\">\n  </a>\n  Converting types\n</h3>\n\n<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>\n\n<p>Example:<br>\n</p>\n\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"kn\">from</span> <span class=\"n\">distutils.util</span> <span class=\"kn\">import</span> <span class=\"n\">strtobool</span>\n<span class=\"n\">DEBUG</span> <span class=\"o\">=</span> <span class=\"nf\">bool</span><span class=\"p\">(</span><span class=\"nf\">strtobool</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"p\">.</span><span class=\"nf\">getenv</span><span class=\"p\">(</span><span class=\"sh\">'</span><span class=\"s\">DEBUG</span><span class=\"sh\">'</span><span class=\"p\">,</span> <span class=\"sh\">'</span><span class=\"s\">True</span><span class=\"sh\">'</span><span class=\"p\">)))</span>\n</code></pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>Enter fullscreen mode</title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"></path>\n</svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>Exit fullscreen mode</title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"></path>\n</svg>\n\n</div>\n</div>\n</div>\n\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-712982\"\n    data-comment-id=\"712982\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amicadhcf0ecg45qix2h8bneakx329li\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"amicadhcf0ecg45qix2h8bneakx329li\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">4</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"712982\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-712982\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aix6zq952ei8477ykobai8errhmtgk28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aix6zq952ei8477ykobai8errhmtgk28\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\" class=\"crayons-icon expanded\"><title id=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aqqgamrqupo07w83avfsaypdfc38f2h8\" class=\"crayons-icon collapsed\"><title id=\"aqqgamrqupo07w83avfsaypdfc38f2h8\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-1322245\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \"\n    data-comment-id=\"1322245\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\"\n    data-comment-author-id=\"2562290\"\n    data-content-user-id=\"2562290\">\n    <a name=\"comment-2n5pf\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" alt=\"derrick_k_429f36beeddff99 profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      derrick k\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1322245\" aria-controls=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"derrick k profile details\">\n      derrick k\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/derrick_k_429f36beeddff99\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      derrick k\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: derrick k\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-12-12T14:19:12Z\" class=\"date\">Dec 12, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2025-04-19T04:12:37Z\" class=date-short-year>\n    Apr 19 &#39;25\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1322245\" aria-controls=\"comment-dropdown-1322245\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\" class=\"crayons-icon pointer-events-none\"><title id=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1322245\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to derrick k&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"2562290\" data-action=\"settings-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings\" aria-label=\"Go to derrick k&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"2562290\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"1322245\"\n                data-comment-url=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\"\n                aria-label=\"Hide derrick k&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod\" aria-label=\"Moderate derrick k&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Report derrick k&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>I agree, it works perfectly</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-1322245\"\n    data-comment-id=\"1322245\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"1322245\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-1322245\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open>\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\" class=\"crayons-icon expanded\"><title id=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atcipprtb6yh2byyphfnhsbchu8x18k0\" class=\"crayons-icon collapsed\"><title id=\"atcipprtb6yh2byyphfnhsbchu8x18k0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div\n    id=\"comment-node-1228782\"\n    class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \"\n    data-comment-id=\"1228782\"\n    data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\"\n    data-comment-author-id=\"1625827\"\n    data-content-user-id=\"1625827\">\n    <a name=\"comment-2hnim\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/niceguydave\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" alt=\"niceguydave profile image\" loading=\"lazy\" />\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/niceguydave\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      David Talbot\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1228782\" aria-controls=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"David Talbot profile details\">\n      David Talbot\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/niceguydave\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\" />\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      David Talbot\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: David Talbot\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-06-14T12:03:32Z\" class=\"date\">Jun 14, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">&bull;</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2024-09-04T09:09:28Z\" class=date-short-year>\n    Sep 4 &#39;24\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1228782\" aria-controls=\"comment-dropdown-1228782\" aria-expanded=\"false\"\n      class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \"\n      aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aclks2g2l2bow740sya6k4kff7mjsiuv\" class=\"crayons-icon pointer-events-none\"><title id=\"aclks2g2l2bow740sya6k4kff7mjsiuv\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1228782\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to David Talbot&#39;s comment\" data-no-instant>Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1625827\" data-action=\"settings-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/settings\" aria-label=\"Go to David Talbot&#39;s comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1625827\">\n              <button\n                class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\"\n                data-hide-type=\"hide\"\n                data-comment-id=\"1228782\"\n                data-comment-url=\"https://dev.to/niceguydave/comment/2hnim\"\n                aria-label=\"Hide David Talbot&#39;s comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/mod\" aria-label=\"Moderate David Talbot&#39;s comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Report David Talbot&#39;s comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div\n          class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>This is really helpful, thanks. Agreed\u2014it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button\n    class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\"\n    id=\"button-for-comment-1228782\"\n    data-comment-id=\"1228782\"\n    aria-label=\"like\"\n    data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"apba72bjxcxsgi9yze6l7sl4vednujll\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"apba72bjxcxsgi9yze6l7sl4vednujll\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\"></span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button\n        class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\"\n        data-comment-id=\"1228782\"\n        data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\"\n        data-tracking-name=\"comment_reply_button\"\n        data-testid=\"reply-button-1228782\"\n        rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a310ex3qenwsd4ez2fili98qg92olabo\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a310ex3qenwsd4ez2fili98qg92olabo\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n    </div>\n\n  </section>\n\n  <div class=\"py-6\">\n    <nav class=\"fs-s align-center block\" aria-label=\"Conduct controls\">\n  <a href=\"/code-of-conduct\" class=\"crayons-link crayons-link--secondary\">Code of Conduct</a>\n  <span class=\"opacity-25 px-2\" role=\"presentation\">&bull;</span>\n  <a href=\"/report-abuse\" class=\"crayons-link crayons-link--secondary\">Report abuse</a>\n</nav>\n\n  </div>\n</div>\n\n<div class=\"fullscreen-code js-fullscreen-code\"></div>\n\n<script>\n    // Listen for resize events and match them to the iframe\n  window.addEventListener('message', function(event) {\n    if (event.origin.startsWith('https://platform.twitter.com')) {\n        var iframes = document.getElementsByTagName('iframe');\n        for (var i = 0; i < iframes.length; i++) {\n          if (event.source === iframes[i].contentWindow) { // iframes which match the event\n            var iframe = iframes[i];\n            var data = event.data['twttr.embed'];\n            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {\n              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.width = data['params']['0']['width'] + 'px !important';\n            }\n            break;\n          }\n        }\n    }\n}, false);\n\n// Legacy support: We have shifted up how we render tweets, but still need to render\n// the old way for old embed. This could eventually be removed.\nvar videoPreviews = document.getElementsByClassName(\"ltag__twitter-tweet__media__video-wrapper\");\n[].forEach.call(videoPreviews, function(el) {\n  el.onclick = function(e) {\n    var divHeight = el.offsetHeight;\n    el.style.maxHeight = divHeight + \"px\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__media--video-preview\")[0].style.display = \"none\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__video\")[0].style.display = \"block\";\n    el.getElementsByTagName(\"video\")[0].play();\n  }\n});\nvar tweets = document.getElementsByClassName(\"ltag__twitter-tweet__main\");\n[].forEach.call(tweets, function(tweet){\n  tweet.onclick = function(e) {\n    if (e.target.nodeName == \"A\" || e.target.parentElement.nodeName == \"A\") {\n      return;\n    }\n    window.open(tweet.dataset.url,\"_blank\");\n  }\n});\n\n  \n  var waitingOnPodcast = setInterval(function() {\n  if (typeof initializePodcastPlayback !== 'undefined') {\n    initializePodcastPlayback();\n    clearInterval(waitingOnPodcast);\n  }\n}, 1);\n\n  \n  function activateRunkitTags() {\n  if (!areAnyRunkitTagsPresent())\n    return\n\n  var checkRunkit = setInterval(function() {\n    try {\n      dynamicallyLoadRunkitLibrary()\n\n      if (typeof(RunKit) === 'undefined') {\n        return\n      }\n\n      replaceTagContentsWithRunkitWidget()\n      clearInterval(checkRunkit);\n    } catch(e) {\n      console.error(e);\n      clearInterval(checkRunkit);\n    }\n  }, 200);\n}\n\nfunction isRunkitTagAlreadyActive(runkitTag) {\n  return runkitTag.querySelector(\"iframe\") !== null;\n};\n\nfunction areAnyRunkitTagsPresent() {\n  var presentRunkitTags = document.getElementsByClassName(\"runkit-element\");\n\n  return presentRunkitTags.length > 0\n}\n\nfunction replaceTagContentsWithRunkitWidget() {\n  var targets = document.getElementsByClassName(\"runkit-element\");\n  for (var i = 0; i < targets.length; i++) {\n    if (isRunkitTagAlreadyActive(targets[i])) {\n      continue;\n    }\n\n    var wrapperContent = targets[i].textContent;\n    if (/^(<iframe src)/.test(wrapperContent) === false) {\n      if (targets[i].children.length > 0) {\n        var preamble = targets[i].children[0].textContent;\n        var content = targets[i].children[1].textContent;\n        targets[i].innerHTML = \"\";\n        var notebook = RunKit.createNotebook({\n          element: targets[i],\n          source: content,\n          preamble: preamble\n        });\n      }\n    }\n  }\n};\n\nfunction dynamicallyLoadRunkitLibrary() {\n  if (typeof(dynamicallyLoadScript) === \"undefined\")\n    return\n\n  dynamicallyLoadScript(\"//embed.runkit.com\")\n}\n\nactivateRunkitTags();\n\n</script>\n<script async src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>\n\n\n<div id=\"hide-comments-modal\" class=\"hidden\">\n  <form id=\"hide-comments-modal__form\" class=\"hide-comments-modal__form\" data-type=\"json\" action=\"/comments/hide\" accept-charset=\"UTF-8\" data-remote=\"true\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" autocomplete=\"off\" /><input type=\"hidden\" name=\"_method\" value=\"patch\" autocomplete=\"off\" /><input type=\"hidden\" name=\"authenticity_token\" value=\"hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ\" autocomplete=\"off\" />\n    <div class=\"hide-comments-modal__content\">\n      <p class=\"pb-2\">\n        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id=\"hide-comments-modal__comment-permalink\" href=\"#\">permalink</a>.\n      </p>\n      <label class=\"crayons-field crayons-field--checkbox my-2\">\n        <input name=\"hide_children\" type=\"hidden\" value=\"0\" autocomplete=\"off\" /><input class=\"hide_children crayons-checkbox\" type=\"checkbox\" value=\"1\" name=\"hide_children\" id=\"hide_children\" />\n        <p class=\"crayons-field__label\">Hide child comments as well</p>\n      </label>\n      <p class=\"pb-4 pt-2\">\n        <button type=\"submit\" class=\"crayons-btn\">\n          Confirm\n        </button>\n      </p>\n    </div>\n</form>  <p class=\"fs-s color-base-60\">For further actions, you may consider blocking this person and/or <a id=\"hide-comments-modal__report-link\" href=\"/report-abuse\">reporting abuse</a></p>\n</div>\n\n\n    <div id=\"runtime-banner-container\"></div>\n    <div id=\"i18n-translations\" data-translations=\"{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Following&quot;,&quot;like&quot;:&quot;Like&quot;,&quot;loading&quot;:&quot;loading...&quot;,&quot;reaction&quot;:&quot;Reaction&quot;,&quot;report_abuse&quot;:&quot;Report abuse&quot;,&quot;search&quot;:&quot;Search&quot;,&quot;success_settings&quot;:&quot;Successfully updated settings.&quot;,&quot;search_placeholder&quot;:&quot;Search...&quot;,&quot;search_find_related_posts&quot;:&quot;Find related posts...&quot;,&quot;search_powered_by&quot;:&quot;Powered by Algolia&quot;,&quot;search_submit_search&quot;:&quot;Submit search for advanced filtering.&quot;,&quot;search_displaying_recommendations&quot;:&quot;Displaying Algolia Recommendations \u2014 Start typing to search&quot;,&quot;article_form_save_changes&quot;:&quot;Save changes&quot;,&quot;article_form_schedule&quot;:&quot;Schedule&quot;,&quot;article_form_publish&quot;:&quot;Publish&quot;,&quot;article_form_loading_preview&quot;:&quot;Loading preview&quot;,&quot;article_form_preview_loaded&quot;:&quot;Preview loaded&quot;,&quot;comments_preview&quot;:&quot;Preview&quot;,&quot;comments_continue_editing&quot;:&quot;Continue editing&quot;,&quot;survey_enter_response&quot;:&quot;Enter your response here...&quot;,&quot;survey_thank_you_response&quot;:&quot;Thank you for your response.&quot;,&quot;survey_thank_you_completing&quot;:&quot;Thank you for completing the survey!&quot;,&quot;dashboard_analytics_readers&quot;:&quot;Readers&quot;,&quot;dashboard_analytics_comments&quot;:&quot;Comments&quot;,&quot;dashboard_analytics_reactions&quot;:&quot;Reactions&quot;,&quot;stats_by&quot;:&quot;by&quot;,&quot;editor_new_title&quot;:&quot;New post title here...&quot;,&quot;editor_body_placeholder&quot;:&quot;Write your post content here...&quot;,&quot;tags_field_label&quot;:&quot;Add up to 4 tags&quot;,&quot;tags_field_placeholder&quot;:&quot;Add up to 4 tags...&quot;,&quot;counted_organization&quot;:{&quot;one&quot;:&quot;%{count} organization&quot;,&quot;other&quot;:&quot;%{count} organizations&quot;},&quot;counted_user&quot;:{&quot;one&quot;:&quot;%{count} person&quot;,&quot;other&quot;:&quot;%{count} people&quot;},&quot;not_following&quot;:&quot;You&#39;re not following anyone&quot;,&quot;following_everyone&quot;:&quot;You&#39;re following %{details} (everyone)&quot;,&quot;you_are_following&quot;:&quot;You&#39;re following&quot;,&quot;and&quot;:&quot;and&quot;}}}\"></div>\n  </div>\n</div>\n    \n\n<footer id=\"footer\" class=\"crayons-footer print-hidden\">\n  <div id=\"footer-container\" class=\"crayons-footer__container\">\n\n\n        <style>\n  .long-bb-body {\n    max-height: calc(100vh - 200px);\n    overflow: hidden;\n  }\n  .long-bb-bottom {\n    height: 180px;\n    background: linear-gradient(to top, var(--card-bg), transparent);\n    margin-top: -180px;\n    position:relative;\n    z-index: 5;\n  }\n</style>\n\n  <div\n    style=\"\"\n    data-display-unit data-id=\"146443\"\n    data-category-click=\"click\"\n    data-category-impression=\"impression\"\n    data-context-type=\"home\"\n    data-special=\"nothing\"\n    data-article-id=\"\"\n    data-type-of=\"in_house\">\n          <div class=\"crayons-card crayons-card--secondary crayons-bb bb-placement js-billboard\" style=\"display: inline-flex; flex-direction: column; align-items: center; margin: 0 auto 2rem auto; width: fit-content; padding: 2rem;\">\n        <p style=\"font-weight: bold; margin: 0 0 1rem 0;\">\n            \ud83d\udc8e DEV Diamond Sponsors\n        </p>\n        <p style=\"font-size: 0.8em; margin: 0 0 2rem 0;\">\n            Thank you to our Diamond Sponsors for supporting the DEV Community\n        </p>\n    \n        <div style=\"display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem;\">\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://aistudio.google.com/?utm_source=partner&amp;utm_medium=partner&amp;utm_campaign=FY25-Global-DEVpartnership-sponsorship-AIS&amp;utm_content=-&amp;utm_term=-&bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjlyhbdqehj3akhz166w.png\" alt=\"Google AI - Official AI Model and Platform Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 54px; padding: 10px;\" loading=\"lazy\" width=\"2048\" height=\"472\">\n                </a>\n                <p style=\"text-align: center;\">Google AI is the official AI Model and Platform Partner of DEV</p>\n            </div>\n\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://neon.tech/?ref=devto&bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl88cil6afxzmgwrgtt.png\" alt=\"Neon - Official Database Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Neon is the official database partner of DEV</p>\n            </div>\n    \n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral&bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv30ephnolfvnlwgwm0yz.png\" alt=\"Algolia - Official Search Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Algolia is the official search partner of DEV</p>\n            </div>\n        </div>\n    </div>\n  </div>\n\n\n    <p class=\"fs-s crayons-footer__description\">\n      <a class=\"c-link c-link--branded fw-medium\" aria-label=\"DEV Community Home\" href=\"/\">DEV Community</a> \u2014 A space to discuss and keep up software development and manage your software career\n    </p>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\" />\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/\">\n      Home\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/about\">\n      About\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/contact\">\n      Contact\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"https://mlh.io/\">\n      MLH\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\" />\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/code-of-conduct\">\n      Code of Conduct\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/privacy\">\n      Privacy Policy\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/terms\">\n      Terms of Use\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <div class=\"fs-s\">\n      <p>Built on <a class=\"c-link c-link--branded\" target=\"_blank\" rel=\"noopener\" href=\"https://www.forem.com\">Forem</a> \u2014 the <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/opensource\">open source</a> software that powers <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to\">DEV</a> and other inclusive communities.</p>\n      <p>Made with love and <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/rails\">Ruby on Rails</a>. DEV Community <span title=\"copyright\">&copy;</span> 2016 - 2026.</p>\n    </div>\n  </div>\n</footer>\n<div id=\"snack-zone\"></div>\n\n    <div id=\"global-signup-modal\" class=\"authentication-modal hidden\">\n  <div class=\"authentication-modal__container\">\n    <figure class=\"authentication-modal__image-container\">\n      <img class=\"authentication-modal__image\" src=\"https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\"\n        alt=\"DEV Community\" loading=\"lazy\" />\n    </figure>\n    <div class=\"authentication-modal__content\">\n      <p class=\"authentication-modal__description\">\n          We&#39;re a place where coders share, stay up-to-date and grow their careers.\n      </p>\n    </div>\n    <div class=\"authentication-modal__actions\">\n      <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"crayons-btn\" aria-label=\"Log in\" data-no-instant>\n        Log in\n      </a>\n      <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" class=\"crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account\" aria-label=\"Create new account\" data-no-instant>\n        Create account\n      </a>\n    </div>\n  </div>\n</div>\n\n<script src=\"https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js\" defer=\"defer\"></script>\n\n    <div id=\"cookie-consent\"></div>\n  <div id=\"reaction-category-resources\" class=\"hidden\" aria-hidden=\"true\">\n    <img data-name=\"Like\" data-slug=\"like\" data-position=\"1\" src=\"https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg\" width=\"18\" height=\"18\" />\n    <img data-name=\"Unicorn\" data-slug=\"unicorn\" data-position=\"2\" src=\"https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg\" width=\"18\" height=\"18\" />\n    <img data-name=\"Exploding Head\" data-slug=\"exploding_head\" data-position=\"3\" src=\"https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg\" width=\"18\" height=\"18\" />\n    <img data-name=\"Raised Hands\" data-slug=\"raised_hands\" data-position=\"4\" src=\"https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg\" width=\"18\" height=\"18\" />\n    <img data-name=\"Fire\" data-slug=\"fire\" data-position=\"5\" src=\"https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg\" width=\"18\" height=\"18\" />\n</div>\n\n    <script>\n  var userSignedIn = false;\n  if (document.readyState === 'complete' || document.readyState === 'interactive') {\n    initAuth();\n  } else {\n    document.addEventListener('DOMContentLoaded', initAuth);\n  }\n\n  function initAuth() {\n    var paramToken = new URLSearchParams(window.location.search).get('jwt');\n\n    if (paramToken && !userSignedIn) {\n      authenticateUser(paramToken);\n    } else {\n      var iframe = document.createElement('iframe');\n      iframe.style.display = 'none';\n      iframe.src = 'https://forem.com/auth_pass/iframe';\n  \n      document.body.appendChild(iframe);\n  \n      window.addEventListener('message', function(event) {\n        if (event.origin !== 'https://forem.com' && event.origin !== window.location.origin) {\n          return;\n        }\n  \n        var data = event.data;\n  \n        if (data.authenticated && !userSignedIn) {\n          authenticateUser(data.token);\n        } else if(data.authenticated && window.ReactNativeWebView && window.ReactNativeWebView.postMessage) {\n          window.ReactNativeWebView.postMessage(JSON.stringify({\n            action: 'login',\n            token: data.token,\n          }));\n        }\n      });  \n    }\n\n    function authenticateUser(token) {\n      fetch('/auth_pass/token_login', {\n        method: 'POST',\n        credentials: 'include',\n        headers: {\n          'Content-Type': 'application/json',\n          'X-CSRF-Token': getMetaContent('csrf-token'),\n        },\n        body: JSON.stringify({ token: token }),\n      })\n      .then(function(response) {\n        return response.json();\n      })\n      .then(function(data) {\n        if (data.success) {\n          if (document.head.querySelector('meta[name=\"user-signed-in\"][content=\"false\"]')) {\n            // Reload the page to update the user's state\n            location.reload();\n          }\n        }\n      })\n      .catch(function(error) {\n        console.error('Error during authentication:', error);\n      });\n    }\n\n    function getMetaContent(name) {\n      var element = document.querySelector('meta[name=\"' + name + '\"]');\n      return element ? element.getAttribute('content') : '';\n    }\n  }\n</script>\n\n  \n  \n  \n  </body>\n  </html>\n",
  "cookies": null,
  "errors": null,
  "final_url": "https://dev.to/nicolaerario/comment/fe1e",
  "headers": {
    "accept-ranges": "bytes",
    "access-control-allow-origin": "*",
    "age": "88570",
    "cache-control": "public, no-cache",
    "content-encoding": "gzip",
    "content-length": "20395",
    "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to",
    "content-type": "text/html; charset=utf-8",
    "date": "Sat, 21 Mar 2026 10:45:42 GMT",
    "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
    "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
    "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
    "referrer-policy": "strict-origin-when-cross-origin",
    "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
    "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
    "server": "Heroku",
    "strict-transport-security": "max-age=31557600",
    "vary": "Accept-Encoding, X-Loggedin",
    "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
    "x-accel-expires": "172800",
    "x-cache": "HIT, HIT",
    "x-cache-hits": "26, 1",
    "x-content-type-options": "nosniff",
    "x-download-options": "noopen",
    "x-permitted-cross-domain-policies": "none",
    "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
    "x-runtime": "0.231911",
    "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100039-CHI",
    "x-timer": "S1774089943.754386,VS0,VE2",
    "x-xss-protection": "0"
  },
  "id": null,
  "scraper_data": null,
  "scraperouter": null,
  "screenshot_url": null,
  "status_code": 200
}

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Skip to content

Navigation menu [ ](/)

Search [ Powered by Algolia Search
](https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral)

[ Log in ](https://dev.to/enter?signup_subforem=1) [ Create account
](https://dev.to/enter?signup_subforem=1&state=new-user)

## DEV Community

Close

#  Discussion on: Django Cheat Sheet: Keep Credentials Secure with Environment
Variables

[View post](/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-
environment-variables-2ah5)

Collapse Expand



[ ](https://dev.to/nicolaerario)

[ Nicola Erario  ](https://dev.to/nicolaerario)

Nicola Erario

[ Nicola Erario  ](/nicolaerario)

Follow

  * Location 

Italy 🇮🇹

  * Joined 

Oct 18, 2018

• [ Sep 17 '19  ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe1e)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e)
  *   * Hide 
  *   *   * 

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG
= True or DEBUG = False in .env file are always evaluated as True

Like comment:  Like comment:  7 likes Like  Comment button Reply

Collapse Expand



[ ](https://dev.to/jamestimmins)

[ James Timmins  ](https://dev.to/jamestimmins)

James Timmins

[ James Timmins  ](/jamestimmins)

Follow

  * Joined 

Sep 19, 2018

• [ Sep 17 '19  ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe27)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27)
  *   * Hide 
  *   *   * 

Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you
can do.

  1. Explicitly check for a string value. DEBUG = (os.getenv("DEBUG") == 'true')
  2. Cast the val to a boolean DEBUG = bool(os.getenv("DEBUG")), and use an empty string to denote a false value `DEBUG=''`.
  3. Use a more fully-featured package like [django-environ](https://github.com/joke2k/django-environ). There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).

Like comment:  Like comment:  7 likes Like  Comment button Reply

Collapse Expand



[ ](https://dev.to/bhupesh)

[ Bhupesh Varshney 👾  ](https://dev.to/

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Response Headers

{
  "accept-ranges": "bytes",
  "access-control-allow-origin": "*",
  "age": "88571",
  "cache-control": "public, no-cache",
  "content-encoding": "gzip",
  "content-length": "20395",
  "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to",
  "content-type": "text/html; charset=utf-8",
  "date": "Sat, 21 Mar 2026 10:45:43 GMT",
  "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
  "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
  "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
  "referrer-policy": "strict-origin-when-cross-origin",
  "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
  "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
  "server": "Heroku",
  "strict-transport-security": "max-age=31557600",
  "vary": "Accept-Encoding, X-Loggedin",
  "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
  "x-accel-expires": "172800",
  "x-cache": "HIT, HIT",
  "x-cache-hits": "26, 1",
  "x-content-type-options": "nosniff",
  "x-download-options": "noopen",
  "x-permitted-cross-domain-policies": "none",
  "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
  "x-runtime": "0.231911",
  "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100179-CHI",
  "x-timer": "S1774089944.558881,VS0,VE2",
  "x-xss-protection": "0"
}

Request Options

{
  "proxy": {
    "type": "datacenter"
  },
  "scraper_options": {
    "network_requests": true
  },
  "screenshot": true,
  "url": "https://dev.to/nicolaerario/comment/fe1e"
}

19 requests captured · 3 API candidates

Method URL Status Type Time
GET
https://dev.to/nicolaerario/comment/fe1e
200 document 0.81s
GET
https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js 3rd-party
200 script 0.44s
GET
https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js 3rd-party
200 script 0.56s
GET
https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js 3rd-party
200 script 0.56s
GET
https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js 3rd-party
200 script 1.00s
GET
https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js 3rd-party
200 script 0.89s
GET
https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js 3rd-party
200 script 1.00s
GET
https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js 3rd-party
200 script 1.00s
GET
https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js 3rd-party
200 script 0.90s
GET
https://platform.twitter.com/widgets.js 3rd-party
200 script 0.83s
GET
https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js 3rd-party
200 script 0.90s
GET
https://dev.to/async_info/base_data API
200 json 0.22s
GET
https://dev.to/reactions?commentable_id=172117&commentable_type=Article API
200 json 0.12s
GET
https://forem.com/auth_pass/iframe 3rd-party
200 document 0.71s
POST
https://dev.to/ahoy/visits API
200 json 0.21s
GET
https://platform.twitter.com/widgets/widget_iframe.2f70fb173b9000da126c79afe2098f02.html?origin=https%3A%2F%2Fdev.to 3rd-party
200 document 0.38s
GET
https://www.googletagmanager.com/gtag/js?id=G-TYEM8Y3JN3 3rd-party
200 script 1.15s
GET
https://syndication.twitter.com/settings?session_id=b5f53e2cf62d4844f6f3a58c74e8d4551a8d1e46 3rd-party
200 json 0.61s
POST
https://www.google-analytics.com/g/collect?v=2&tid=G-TYEM8Y3JN3&gtm=45je63i0v889731706za200zd889731706&_p=1774089945660&gcd=13l3l3l3l1l1&npa=0&dma=0&cid=502068379.1774089946&ul=en-us&sr=1280x720&uaa=x86&uab=64&uafvl=Not%253AA-Brand%3B99.0.0.0%7CHeadlessChrome%3B145.0.7632.6%7CChromium%3B145.0.7632.6&uamb=0&uam=&uap=Linux&uapv=&uaw=0&are=1&frm=0&pscdl=noapi&_s=1&tag_exp=103116026~103200004~115938466~115938469~116024733~117484252~118104772&sid=1774089945&sct=1&seg=0&dl=https%3A%2F%2Fdev.to%2Fnicolaerario%2Fcomment%2Ffe1e&dt=How%20do%20you%20manage%20Boolean%20with%20python-dotenv%3F%20I%20mean%20that%20(%20for%20example)DEBUG...%20-%20DEV%20Community&en=page_view&_fv=1&_nsi=1&_ss=1&_ee=1&ep.anonymize_ip=true&tfd=2774 3rd-party
other 0.00s

Potential API Endpoints

  • https://dev.to/ahoy/visits
  • https://dev.to/async_info/base_data
  • https://dev.to/reactions?commentable_id=172117&commentable_type=Article

Protections

CDN

Fastly

Info

Fastly delivery headers were detected.

Impact. Edge behavior may affect headers, caching, and request handling.

Recommendation. Use this as routing context rather than a direct block signal.

Evidence

  • X-Served-By header present

CDN

Varnish

Info

Varnish caching markers were detected.

Impact. You may be seeing a cache or edge layer instead of direct origin behavior.

Recommendation. Interpret this as edge context and combine it with stronger protection findings if present.

Evidence

  • Via header referenced Varnish

Structured Metadata

Open Graph
[
  {
    "namespace": {
      "og": "http://ogp.me/ns#"
    },
    "properties": [
      [
        "og:type",
        "article"
      ],
      [
        "og:title",
        "Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables"
      ],
      [
        "og:description",
        "How to use environment variables to keep secure keys out of your code."
      ],
      [
        "og:site_name",
        "DEV Community"
      ],
      [
        "og:url",
        "https://dev.to/nicolaerario/comment/fe1e"
      ],
      [
        "og:title",
        "How do you manage Boolean with python-dotenv? I... \u2014 DEV Community"
      ],
      [
        "og:image",
        "https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"
      ]
    ]
  }
]

Scraper Response Data

Response payload
{
  "content": "<!DOCTYPE html><html lang=\"en\" class=\"js-focus-visible\" data-js-focus-visible=\"\"><head>\n    <meta charset=\"utf-8\">\n    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>\n    \n    <meta name=\"description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta name=\"keywords\" content=\"software, coding, development, engineering, inclusive, community\">\n\n    <meta property=\"og:type\" content=\"article\">\n    <meta property=\"og:title\" content=\"Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta property=\"og:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta property=\"og:site_name\" content=\"DEV Community\">\n    <meta name=\"twitter:card\" content=\"summary_large_image\">\n    <meta name=\"twitter:site\" content=\"@thepracticaldev\">\n    <meta name=\"twitter:creator\" content=\"@\">\n    <meta name=\"twitter:title\" content=\"Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta name=\"twitter:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n\n      <link rel=\"canonical\" href=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:url\" content=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta name=\"twitter:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta property=\"og:image\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n      <meta name=\"twitter:image:src\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n\n      <meta name=\"last-updated\" content=\"2026-03-20 10:09:32 UTC\">\n      <meta name=\"user-signed-in\" content=\"false\">\n      <meta name=\"head-cached-at\" content=\"1774001372\">\n      <meta name=\"environment\" content=\"production\">\n      <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"main-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"main-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"main-crayons-stylesheet\">\n\n      <script src=\"https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js\" defer=\"defer\"></script>\n\n        <meta name=\"search-script\" content=\"https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js\">\n      <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, viewport-fit=cover\">\n      <link rel=\"icon\" type=\"image/x-icon\" href=\"https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"152x152\" href=\"https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"167x167\" href=\"https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"192x192\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"128x128\">\n      <meta name=\"apple-mobile-web-app-title\" content=\"dev.to\">\n      <meta name=\"application-name\" content=\"dev.to\">\n      <meta name=\"theme-color\" content=\"#ffffff\" media=\"(prefers-color-scheme: light)\">\n      <meta name=\"theme-color\" content=\"#000000\" media=\"(prefers-color-scheme: dark)\">\n      <link rel=\"search\" href=\"https://dev.to/open-search.xml\" type=\"application/opensearchdescription+xml\" title=\"DEV Community\">\n\n      <meta property=\"forem:name\" content=\"DEV Community\">\n      <meta property=\"forem:logo\" content=\"https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <meta property=\"forem:domain\" content=\"dev.to\">\n    \n  <script src=\"//www.googletagmanager.com/gtag/js?id=G-TYEM8Y3JN3\" async=\"\"></script><meta name=\"csrf-param\" content=\"authenticity_token\"><meta name=\"csrf-token\" content=\"4GMeZtxpFRdbX83orvTlobbNLmt8OUFvNQI5ZYJ6S0GwYJCujj4-Ok58b1QiXaXl-IRD3McRIYPpIW-w_mMtow\"></head>\n      <body class=\"sans-serif-article-body default-header\" data-user-status=\"logged-out\" data-is-root-subforem=\"false\" data-subforem-id=\"1\" data-side-nav-visible=\"false\" data-community-name=\"DEV Community\" data-subscription-icon=\"https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png\" data-locale=\"en\" data-honeybadger-key=\"hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr\" data-deployed-at=\"2026-03-19T20:49:25Z\" data-latest-commit-id=\"f47ae62cb2f25a529b1137abf7975d0e86324bf1\" data-ga-tracking=\"UA-71991109-1\" data-cookie-banner-user-context=\"logged_out_only\" data-cookie-banner-platform-context=\"off\" data-algolia-id=\"PRSOBFP46H\" data-algolia-search-key=\"9aa7d31610cba78851c9b1f63776a9dd\" data-algolia-display=\"true\" data-dynamic-url-component=\"bmar11\" data-ga4-tracking-id=\"G-TYEM8Y3JN3\" data-runtime=\"Browser-Linux\" data-follow-handler-initialized=\"true\" data-loaded=\"true\">\n        \n        <script>\n          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {\n            document.body.classList.add(\"hidden-shell\");\n          }\n            if (new Date() > new Date(\"2026-02-04T09:00:00-05:00\")) {\n              document.body.dataset.sideNavVisible = \"false\";\n            } \n        </script>\n\n        <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"secondary-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"secondary-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"secondary-crayons-stylesheet\">\n\n        <div id=\"body-styles\">\n          <style>\n            :root {\n              --accent-brand-lighter-rgb: 80, 99, 301;\n              --accent-brand-rgb: 59, 73, 223;\n              --accent-brand-darker-rgb: 47, 58, 178;\n            }\n          </style>\n        </div>\n        <div id=\"audiocontent\" data-podcast=\"\">\n          \n        </div>\n        <div class=\"navigation-progress\" id=\"navigation-progress\"></div>\n\n<header id=\"topbar\" class=\"crayons-header topbar print-hidden\">\n  <span id=\"route-change-target\" tabindex=\"-1\"></span>\n  <a href=\"#main-content\" class=\"skip-content-link\">Skip to content</a>\n  <div class=\"crayons-header__container\">\n    <span class=\"inline-block m:hidden \">\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger mx-2\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\" class=\"crayons-icon\"><title id=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\">Navigation menu</title>\n    <path d=\"M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z\"></path>\n</svg>\n\n      </button>\n    </span>\n    <a href=\"/\" class=\"site-logo\" aria-label=\"DEV Community Home\">\n    <img class=\"site-logo__img\" src=\"https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png\" style=\"aspect-ratio: 10 / 8\" alt=\"DEV Community\">\n</a>\n\n\n    <div class=\"crayons-header--search js-search-form\" id=\"header-search\">\n      <form accept-charset=\"UTF-8\" method=\"get\" action=\"/search\" role=\"search\">\n        <div class=\"crayons-fields crayons-fields--horizontal\">\n          <div class=\"crayons-field flex-1 relative\">\n            <input id=\"search-input\" class=\"crayons-header--search-input crayons-textfield js-search-input\" type=\"text\" name=\"q\" placeholder=\"Find related posts...\" autocomplete=\"off\" style=\"\">\n            <button type=\"submit\" aria-label=\"Search\" class=\"c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\">Search</title>\n    <path d=\"M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z\"></path>\n</svg>\n\n            </button>\n\n            <a class=\"crayons-header--search-brand-indicator\" href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral\" target=\"_blank\" rel=\"noopener noreferrer\">\n                Powered by Algolia\n                <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"Layer_1\" width=\"24\" height=\"24\" viewBox=\"0 0 500 500.34\" role=\"img\" aria-labelledby=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\">Search</title>\n  <defs></defs><path class=\"cls-1\" d=\"M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z\"></path>\n</svg>\n\n            </a>\n          </div>\n        </div>\n      </form>\n    </div>\n\n    <div class=\"flex items-center h-100 ml-auto\">\n        <div class=\"flex\" id=\"authentication-top-nav-actions\">\n          <span class=\"hidden m:block\">\n            <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"c-link c-link--block mr-2 whitespace-nowrap ml-auto\" data-no-instant=\"\">\n              Log in\n            </a>\n          </span>\n\n          <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" data-tracking-id=\"ca_top_nav\" data-tracking-source=\"top_navbar\" class=\"c-cta c-cta--branded whitespace-nowrap mr-2\" data-no-instant=\"\">\n            Create account\n          </a>\n        </div>\n    </div>\n  </div>\n</header>\n\n<div class=\"hamburger\">\n  <div class=\"hamburger__content\">\n    <header class=\"hamburger__content__header\">\n      <h2 class=\"fs-l fw-bold flex-1 break-word lh-tight\">DEV Community</h2>\n\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger shrink-0\" aria-label=\"Close\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7jqca81wlh4sunhyocm20yteah4aqdu\" aria-hidden=\"true\" class=\"crayons-icon c-btn__icon\"><title id=\"a7jqca81wlh4sunhyocm20yteah4aqdu\">Close</title><path d=\"M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z\"></path></svg>\n\n      </button>\n    </header>\n\n    <div class=\"p-2 js-navigation-links-container\" id=\"authentication-hamburger-actions\">\n    </div>\n  </div>\n  <div class=\"hamburger__overlay js-hamburger-trigger\"></div>\n</div>\n\n\n        <div id=\"active-broadcast\" class=\"broadcast-wrapper\"></div>\n<div id=\"page-content\" class=\"wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760\" data-current-page=\"comments-index\">\n  <div id=\"page-content-inner\" data-internal-nav=\"false\">\n    <div id=\"page-route-change\" class=\"screen-reader-only\" aria-live=\"polite\" aria-atomic=\"true\"></div>\n\n    <script src=\"https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js\" defer=\"defer\"></script>\n\n  \n<script src=\"https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js\" defer=\"defer\"></script>\n\n<div class=\"crayons-layout crayons-layout--limited-l gap-0\" data-follow-button-container=\"true\">\n    <span id=\"comment-article-indicator\" data-article-id=\"172117\"></span>\n\n    <div id=\"response-templates-data\" class=\"hidden\"></div>\n    <script src=\"https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js\" defer=\"defer\"></script>\n    <header class=\"p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0\">\n        <h1 class=\"crayons-subtitle-1 mb-4\">\n          <span class=\"fw-normal color-base-60\">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>\n        </h1>\n        <div class=\"flex\">\n          <a class=\"crayons-btn crayons-btn--outlined mr-2\" href=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5\">View post</a>\n        </div>\n    </header>\n\n\n  <section class=\"crayons-card text-padding min-w-0 z-elevate\" id=\"comments-container\" data-commentable-id=\"172117\" data-commentable-type=\"Article\" data-commentable-author-id=\"102760\" data-commentable-co-author-ids=\"\">\n\n\n    <div class=\"comments\" id=\"comment-trees-container\">\n              <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-0\n                    root\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"m:mx-1 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\" class=\"crayons-icon expanded\"><title id=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\" class=\"crayons-icon collapsed\"><title id=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273144\" class=\"\n      comment single-comment-node\n      \n      root\n      comment--deep-0\n      \n    \" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fe1e\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273144\" aria-controls=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:02:26Z\" class=\"date-short-year\" title=\"Tuesday, September 17, 2019 at 6:02:26 PM\">Sep 17 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273144\" aria-controls=\"comment-dropdown-273144\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\" class=\"crayons-icon pointer-events-none\"><title id=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273144\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273144\" data-comment-url=\"https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273144\" data-comment-id=\"273144\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 9;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3btu01xca2urgip0ej7lt2tshj6bs28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3btu01xca2urgip0ej7lt2tshj6bs28\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a207ojso91c7liu3pwqmlfkjddpc2zco\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a207ojso91c7liu3pwqmlfkjddpc2zco\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-273144\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273144\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amu86j05tb5rto5dwbol17xfyeew32qd\" class=\"crayons-icon expanded\"><title id=\"amu86j05tb5rto5dwbol17xfyeew32qd\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"agcra525od8yaymvu4prqj30npmizg4n\" class=\"crayons-icon collapsed\"><title id=\"agcra525od8yaymvu4prqj30npmizg4n\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273163\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-comment-author-id=\"102760\" data-content-user-id=\"102760\">\n    <a name=\"comment-fe27\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/jamestimmins\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" alt=\"jamestimmins profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/jamestimmins\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      James Timmins\n    </span>\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -mr-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273163\" aria-controls=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"James Timmins profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      James Timmins\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/jamestimmins\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      James Timmins\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: James Timmins\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-09-19T16:58:25Z\" class=\"date\">Sep 19, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -ml-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:29:14Z\" class=\"date-short-year\" title=\"Tuesday, September 17, 2019 at 6:29:14 PM\">Sep 17 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273163\" aria-controls=\"comment-dropdown-273163\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\" class=\"crayons-icon pointer-events-none\"><title id=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273163\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to James Timmins's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"102760\" data-action=\"settings-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/settings\" aria-label=\"Go to James Timmins's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"102760\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273163\" data-comment-url=\"https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Hide James Timmins's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/mod\" aria-label=\"Moderate James Timmins's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Report James Timmins's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>\n\n<ol>\n<li>Explicitly check for a string value. DEBUG = (os.getenv(\"DEBUG\") == 'true')</li>\n<li>Cast the val to a boolean DEBUG = bool(os.getenv(\"DEBUG\")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>\n<li>Use a more fully-featured package like <a href=\"https://github.com/joke2k/django-environ\" rel=\"nofollow\">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>\n</ol>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273163\" data-comment-id=\"273163\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 8;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"acgeuroqpao89v1gqag5tnag1lzjbopd\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"acgeuroqpao89v1gqag5tnag1lzjbopd\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"alpwyiy7hd86mwy98dvfifgf6axh83az\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"alpwyiy7hd86mwy98dvfifgf6axh83az\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-273163\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273163\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\" class=\"crayons-icon expanded\"><title id=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\" class=\"crayons-icon collapsed\"><title id=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-359014\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-comment-author-id=\"119873\" data-content-user-id=\"119873\">\n    <a name=\"comment-kb26\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/bhupesh\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" alt=\"bhupesh profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/bhupesh\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Bhupesh Varshney \ud83d\udc7e\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-359014\" aria-controls=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Bhupesh Varshney \ud83d\udc7e profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </button>\n    <div id=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #0000bc; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/bhupesh\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney \ud83d\udc7e&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Bhupesh Varshney \ud83d\udc7e\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Email\n          </div>\n          <div class=\"value\">\n            <a href=\"mailto:\"></a>\n          </div>\n        </li>\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India \ud83c\uddee\ud83c\uddf3\n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-12-05T15:02:51Z\" class=\"date\">Dec 5, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2020-01-16T08:59:45Z\" class=\"date-short-year\" title=\"Thursday, January 16, 2020 at 8:59:45 AM\">Jan 16 '20</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-359014\" aria-controls=\"comment-dropdown-359014\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\" class=\"crayons-icon pointer-events-none\"><title id=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-359014\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Bhupesh Varshney \ud83d\udc7e's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"119873\" data-action=\"settings-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/settings\" aria-label=\"Go to Bhupesh Varshney \ud83d\udc7e's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"119873\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"359014\" data-comment-url=\"https://dev.to/bhupesh/comment/kb26\" aria-label=\"Hide Bhupesh Varshney \ud83d\udc7e's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/mod\" aria-label=\"Moderate Bhupesh Varshney \ud83d\udc7e's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" aria-label=\"Report Bhupesh Varshney \ud83d\udc7e's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>thanks for this</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-359014\" data-comment-id=\"359014\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 7;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-359014\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-359014\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7qkh3osze31p5tx1sa37ss9h410885k\" class=\"crayons-icon expanded\"><title id=\"a7qkh3osze31p5tx1sa37ss9h410885k\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ap76c9hto972y44k19vq49h1o4ipe73a\" class=\"crayons-icon collapsed\"><title id=\"ap76c9hto972y44k19vq49h1o4ipe73a\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1107596\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-comment-author-id=\"1215611\" data-content-user-id=\"1215611\">\n    <a name=\"comment-2b0bm\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/eftehassanpp\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" alt=\"eftehassanpp profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/eftehassanpp\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      eftehassanpp\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1107596\" aria-controls=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"eftehassanpp profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      eftehassanpp\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/eftehassanpp\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      eftehassanpp\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: eftehassanpp\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Full stack Web Developer\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2023-11-21T21:33:36Z\" class=\"date\">Nov 21, 2023</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2023-11-21T21:37:14Z\" class=\"date-short-year\" title=\"Tuesday, November 21, 2023 at 9:37:14 PM\">Nov 21 '23</time>\n\n    <span class=\"hidden m:inline-block\">\u2022 Edited on <time datetime=\"2023-11-21T21:37:49Z\" class=\"date-no-year\" title=\"Tuesday, November 21, 2023 at 9:37:49 PM\">Nov 21</time></span>\n    <span class=\"m:hidden\">\u2022 Edited</span>\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1107596\" aria-controls=\"comment-dropdown-1107596\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"anqysk9wz3k463ox4nph62xear0d3p4w\" class=\"crayons-icon pointer-events-none\"><title id=\"anqysk9wz3k463ox4nph62xear0d3p4w\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1107596\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to eftehassanpp's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1215611\" data-action=\"settings-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/settings\" aria-label=\"Go to eftehassanpp's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1215611\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1107596\" data-comment-url=\"https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Hide eftehassanpp's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/mod\" aria-label=\"Moderate eftehassanpp's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Report eftehassanpp's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>\n<strong>import json</strong><br>\n<strong>DEBUG = json.loads(os.getenv(\"DEBUG\"))<br>\nif DEBUG:<br>\n    print(\"Debugging\")</strong></p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1107596\" data-comment-id=\"1107596\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 6;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abwchupp63so33156spria10r4l8m637\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"abwchupp63so33156spria10r4l8m637\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count hidden\">0</span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1107596\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\" class=\"crayons-icon expanded\"><title id=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2qx85oskkj1aic7osf7czppfjrosxg3\" class=\"crayons-icon collapsed\"><title id=\"a2qx85oskkj1aic7osf7czppfjrosxg3\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274947\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-comment-author-id=\"230500\" data-content-user-id=\"230500\">\n    <a name=\"comment-fgin\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/anshsaini\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" alt=\"anshsaini profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/anshsaini\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Ansh Saini\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274947\" aria-controls=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Ansh Saini profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Ansh Saini\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #aaa1e0; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/anshsaini\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Ansh Saini\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Ansh Saini\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Here to share my knowledge and learn new things, then share those as well.\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India\n          </div>\n        </li>\n          <li>\n            <div class=\"key\">\n              Education\n            </div>\n            <div class=\"value\">\n              Bachelor's Degree in Computer Science\n            </div>\n          </li>\n          <li>\n            <div class=\"key\">\n              Work\n            </div>\n            <div class=\"value\">\n              Software Development Manager at Suraasa\n            </div>\n          </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-09-16T11:14:42Z\" class=\"date\">Sep 16, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T18:08:31Z\" class=\"date-short-year\" title=\"Thursday, September 19, 2019 at 6:08:31 PM\">Sep 19 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274947\" aria-controls=\"comment-dropdown-274947\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\" class=\"crayons-icon pointer-events-none\"><title id=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274947\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Ansh Saini's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"230500\" data-action=\"settings-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/settings\" aria-label=\"Go to Ansh Saini's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"230500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274947\" data-comment-url=\"https://dev.to/anshsaini/comment/fgin\" aria-label=\"Hide Ansh Saini's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/mod\" aria-label=\"Moderate Ansh Saini's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" aria-label=\"Report Ansh Saini's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274947\" data-comment-id=\"274947\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 5;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ajn1movjhp9pjktahx5eie34nb5xkz92\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ajn1movjhp9pjktahx5eie34nb5xkz92\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-274947\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274947\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\" class=\"crayons-icon expanded\"><title id=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\" class=\"crayons-icon collapsed\"><title id=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274987\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fgkb\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274987\" aria-controls=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T19:03:55Z\" class=\"date-short-year\" title=\"Thursday, September 19, 2019 at 7:03:55 PM\">Sep 19 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274987\" aria-controls=\"comment-dropdown-274987\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\" class=\"crayons-icon pointer-events-none\"><title id=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274987\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274987\" data-comment-url=\"https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Sure! After time spent to True this, False that... and your app lives of it\u2019s own life </p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274987\" data-comment-id=\"274987\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 4;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-274987\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274987\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab4azljunvkclho839543mrgdhe8uanf\" class=\"crayons-icon expanded\"><title id=\"ab4azljunvkclho839543mrgdhe8uanf\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\" class=\"crayons-icon collapsed\"><title id=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-712982\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-comment-author-id=\"201500\" data-content-user-id=\"201500\">\n    <a name=\"comment-1eeia\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/guettli\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" alt=\"guettli profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/guettli\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Thomas G\u00fcttler\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-712982\" aria-controls=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Thomas G\u00fcttler profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Thomas G\u00fcttler\n      \n    </button>\n    <div id=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/guettli\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Thomas G\u00fcttler\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas G\u00fcttler&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Thomas G\u00fcttler\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-07-25T13:33:46Z\" class=\"date\">Jul 25, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2021-05-13T19:37:19Z\" class=\"date-short-year\" title=\"Thursday, May 13, 2021 at 7:37:19 PM\">May 13 '21</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-712982\" aria-controls=\"comment-dropdown-712982\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\" class=\"crayons-icon pointer-events-none\"><title id=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-712982\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Thomas G\u00fcttler's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"201500\" data-action=\"settings-button\" data-path=\"https://dev.to/guettli/comment/1eeia/settings\" aria-label=\"Go to Thomas G\u00fcttler's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"201500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"712982\" data-comment-url=\"https://dev.to/guettli/comment/1eeia\" aria-label=\"Hide Thomas G\u00fcttler's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/guettli/comment/1eeia/mod\" aria-label=\"Moderate Thomas G\u00fcttler's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" aria-label=\"Report Thomas G\u00fcttler's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Don't ask my why the author did not accept my PR: <a href=\"https://github.com/theskumar/python-dotenv/pull/293/files\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">github.com/theskumar/python-dotenv...</a></p>\n\n<h3>\n  <a name=\"converting-types\" href=\"#converting-types\">\n  </a>\n  Converting types\n</h3>\n\n<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>\n\n<p>Example:<br>\n</p>\n\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"kn\">from</span> <span class=\"n\">distutils.util</span> <span class=\"kn\">import</span> <span class=\"n\">strtobool</span>\n<span class=\"n\">DEBUG</span> <span class=\"o\">=</span> <span class=\"nf\">bool</span><span class=\"p\">(</span><span class=\"nf\">strtobool</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"p\">.</span><span class=\"nf\">getenv</span><span class=\"p\">(</span><span class=\"sh\">'</span><span class=\"s\">DEBUG</span><span class=\"sh\">'</span><span class=\"p\">,</span> <span class=\"sh\">'</span><span class=\"s\">True</span><span class=\"sh\">'</span><span class=\"p\">)))</span>\n</code></pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>Enter fullscreen mode</title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"></path>\n</svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>Exit fullscreen mode</title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"></path>\n</svg>\n\n</div>\n</div>\n</div>\n\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-712982\" data-comment-id=\"712982\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 3;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amicadhcf0ecg45qix2h8bneakx329li\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"amicadhcf0ecg45qix2h8bneakx329li\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-712982\">4</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-712982\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aix6zq952ei8477ykobai8errhmtgk28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aix6zq952ei8477ykobai8errhmtgk28\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\" class=\"crayons-icon expanded\"><title id=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aqqgamrqupo07w83avfsaypdfc38f2h8\" class=\"crayons-icon collapsed\"><title id=\"aqqgamrqupo07w83avfsaypdfc38f2h8\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1322245\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-comment-author-id=\"2562290\" data-content-user-id=\"2562290\">\n    <a name=\"comment-2n5pf\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" alt=\"derrick_k_429f36beeddff99 profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      derrick k\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1322245\" aria-controls=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"derrick k profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      derrick k\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/derrick_k_429f36beeddff99\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      derrick k\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: derrick k\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-12-12T14:19:12Z\" class=\"date\">Dec 12, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2025-04-19T04:12:37Z\" class=\"date-short-year\" title=\"Saturday, April 19, 2025 at 4:12:37 AM\">Apr 19 '25</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1322245\" aria-controls=\"comment-dropdown-1322245\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\" class=\"crayons-icon pointer-events-none\"><title id=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1322245\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to derrick k's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"2562290\" data-action=\"settings-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings\" aria-label=\"Go to derrick k's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"2562290\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1322245\" data-comment-url=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Hide derrick k's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod\" aria-label=\"Moderate derrick k's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Report derrick k's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>I agree, it works perfectly</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1322245\" data-comment-id=\"1322245\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 2;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-1322245\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1322245\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\" class=\"crayons-icon expanded\"><title id=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atcipprtb6yh2byyphfnhsbchu8x18k0\" class=\"crayons-icon collapsed\"><title id=\"atcipprtb6yh2byyphfnhsbchu8x18k0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1228782\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-comment-author-id=\"1625827\" data-content-user-id=\"1625827\">\n    <a name=\"comment-2hnim\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/niceguydave\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" alt=\"niceguydave profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/niceguydave\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      David Talbot\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1228782\" aria-controls=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"David Talbot profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      David Talbot\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/niceguydave\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      David Talbot\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: David Talbot\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-06-14T12:03:32Z\" class=\"date\">Jun 14, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2024-09-04T09:09:28Z\" class=\"date-short-year\" title=\"Wednesday, September 4, 2024 at 9:09:28 AM\">Sep 4 '24</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1228782\" aria-controls=\"comment-dropdown-1228782\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aclks2g2l2bow740sya6k4kff7mjsiuv\" class=\"crayons-icon pointer-events-none\"><title id=\"aclks2g2l2bow740sya6k4kff7mjsiuv\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1228782\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to David Talbot's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1625827\" data-action=\"settings-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/settings\" aria-label=\"Go to David Talbot's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1625827\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1228782\" data-comment-url=\"https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Hide David Talbot's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/mod\" aria-label=\"Moderate David Talbot's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Report David Talbot's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>This is really helpful, thanks. Agreed\u2014it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1228782\" data-comment-id=\"1228782\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 1;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"apba72bjxcxsgi9yze6l7sl4vednujll\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"apba72bjxcxsgi9yze6l7sl4vednujll\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count hidden\">0</span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1228782\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a310ex3qenwsd4ez2fili98qg92olabo\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a310ex3qenwsd4ez2fili98qg92olabo\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n    </div>\n\n  </section>\n\n  <div class=\"py-6\">\n    <nav class=\"fs-s align-center block\" aria-label=\"Conduct controls\">\n  <a href=\"/code-of-conduct\" class=\"crayons-link crayons-link--secondary\">Code of Conduct</a>\n  <span class=\"opacity-25 px-2\" role=\"presentation\">\u2022</span>\n  <a href=\"/report-abuse\" class=\"crayons-link crayons-link--secondary\">Report abuse</a>\n</nav>\n\n  </div>\n</div>\n\n<div class=\"fullscreen-code js-fullscreen-code\"></div>\n\n<script>\n    // Listen for resize events and match them to the iframe\n  window.addEventListener('message', function(event) {\n    if (event.origin.startsWith('https://platform.twitter.com')) {\n        var iframes = document.getElementsByTagName('iframe');\n        for (var i = 0; i < iframes.length; i++) {\n          if (event.source === iframes[i].contentWindow) { // iframes which match the event\n            var iframe = iframes[i];\n            var data = event.data['twttr.embed'];\n            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {\n              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.width = data['params']['0']['width'] + 'px !important';\n            }\n            break;\n          }\n        }\n    }\n}, false);\n\n// Legacy support: We have shifted up how we render tweets, but still need to render\n// the old way for old embed. This could eventually be removed.\nvar videoPreviews = document.getElementsByClassName(\"ltag__twitter-tweet__media__video-wrapper\");\n[].forEach.call(videoPreviews, function(el) {\n  el.onclick = function(e) {\n    var divHeight = el.offsetHeight;\n    el.style.maxHeight = divHeight + \"px\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__media--video-preview\")[0].style.display = \"none\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__video\")[0].style.display = \"block\";\n    el.getElementsByTagName(\"video\")[0].play();\n  }\n});\nvar tweets = document.getElementsByClassName(\"ltag__twitter-tweet__main\");\n[].forEach.call(tweets, function(tweet){\n  tweet.onclick = function(e) {\n    if (e.target.nodeName == \"A\" || e.target.parentElement.nodeName == \"A\") {\n      return;\n    }\n    window.open(tweet.dataset.url,\"_blank\");\n  }\n});\n\n  \n  var waitingOnPodcast = setInterval(function() {\n  if (typeof initializePodcastPlayback !== 'undefined') {\n    initializePodcastPlayback();\n    clearInterval(waitingOnPodcast);\n  }\n}, 1);\n\n  \n  function activateRunkitTags() {\n  if (!areAnyRunkitTagsPresent())\n    return\n\n  var checkRunkit = setInterval(function() {\n    try {\n      dynamicallyLoadRunkitLibrary()\n\n      if (typeof(RunKit) === 'undefined') {\n        return\n      }\n\n      replaceTagContentsWithRunkitWidget()\n      clearInterval(checkRunkit);\n    } catch(e) {\n      console.error(e);\n      clearInterval(checkRunkit);\n    }\n  }, 200);\n}\n\nfunction isRunkitTagAlreadyActive(runkitTag) {\n  return runkitTag.querySelector(\"iframe\") !== null;\n};\n\nfunction areAnyRunkitTagsPresent() {\n  var presentRunkitTags = document.getElementsByClassName(\"runkit-element\");\n\n  return presentRunkitTags.length > 0\n}\n\nfunction replaceTagContentsWithRunkitWidget() {\n  var targets = document.getElementsByClassName(\"runkit-element\");\n  for (var i = 0; i < targets.length; i++) {\n    if (isRunkitTagAlreadyActive(targets[i])) {\n      continue;\n    }\n\n    var wrapperContent = targets[i].textContent;\n    if (/^(<iframe src)/.test(wrapperContent) === false) {\n      if (targets[i].children.length > 0) {\n        var preamble = targets[i].children[0].textContent;\n        var content = targets[i].children[1].textContent;\n        targets[i].innerHTML = \"\";\n        var notebook = RunKit.createNotebook({\n          element: targets[i],\n          source: content,\n          preamble: preamble\n        });\n      }\n    }\n  }\n};\n\nfunction dynamicallyLoadRunkitLibrary() {\n  if (typeof(dynamicallyLoadScript) === \"undefined\")\n    return\n\n  dynamicallyLoadScript(\"//embed.runkit.com\")\n}\n\nactivateRunkitTags();\n\n</script>\n<script async=\"\" src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>\n\n\n<div id=\"hide-comments-modal\" class=\"hidden\">\n  <form id=\"hide-comments-modal__form\" class=\"hide-comments-modal__form\" data-type=\"json\" action=\"/comments/hide\" accept-charset=\"UTF-8\" data-remote=\"true\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"\u2713\" autocomplete=\"off\" style=\"\"><input type=\"hidden\" name=\"_method\" value=\"patch\" autocomplete=\"off\" style=\"\"><input type=\"hidden\" name=\"authenticity_token\" value=\"hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ\" autocomplete=\"off\" style=\"\">\n    <div class=\"hide-comments-modal__content\">\n      <p class=\"pb-2\">\n        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id=\"hide-comments-modal__comment-permalink\" href=\"#\">permalink</a>.\n      </p>\n      <label class=\"crayons-field crayons-field--checkbox my-2\">\n        <input name=\"hide_children\" type=\"hidden\" value=\"0\" autocomplete=\"off\" style=\"\"><input class=\"hide_children crayons-checkbox\" type=\"checkbox\" value=\"1\" name=\"hide_children\" id=\"hide_children\" style=\"\">\n        <p class=\"crayons-field__label\">Hide child comments as well</p>\n      </label>\n      <p class=\"pb-4 pt-2\">\n        <button type=\"submit\" class=\"crayons-btn\">\n          Confirm\n        </button>\n      </p>\n    </div>\n</form>  <p class=\"fs-s color-base-60\">For further actions, you may consider blocking this person and/or <a id=\"hide-comments-modal__report-link\" href=\"/report-abuse\">reporting abuse</a></p>\n</div>\n\n\n    <div id=\"runtime-banner-container\"></div>\n    <div id=\"i18n-translations\" data-translations=\"{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Following&quot;,&quot;like&quot;:&quot;Like&quot;,&quot;loading&quot;:&quot;loading...&quot;,&quot;reaction&quot;:&quot;Reaction&quot;,&quot;report_abuse&quot;:&quot;Report abuse&quot;,&quot;search&quot;:&quot;Search&quot;,&quot;success_settings&quot;:&quot;Successfully updated settings.&quot;,&quot;search_placeholder&quot;:&quot;Search...&quot;,&quot;search_find_related_posts&quot;:&quot;Find related posts...&quot;,&quot;search_powered_by&quot;:&quot;Powered by Algolia&quot;,&quot;search_submit_search&quot;:&quot;Submit search for advanced filtering.&quot;,&quot;search_displaying_recommendations&quot;:&quot;Displaying Algolia Recommendations \u2014 Start typing to search&quot;,&quot;article_form_save_changes&quot;:&quot;Save changes&quot;,&quot;article_form_schedule&quot;:&quot;Schedule&quot;,&quot;article_form_publish&quot;:&quot;Publish&quot;,&quot;article_form_loading_preview&quot;:&quot;Loading preview&quot;,&quot;article_form_preview_loaded&quot;:&quot;Preview loaded&quot;,&quot;comments_preview&quot;:&quot;Preview&quot;,&quot;comments_continue_editing&quot;:&quot;Continue editing&quot;,&quot;survey_enter_response&quot;:&quot;Enter your response here...&quot;,&quot;survey_thank_you_response&quot;:&quot;Thank you for your response.&quot;,&quot;survey_thank_you_completing&quot;:&quot;Thank you for completing the survey!&quot;,&quot;dashboard_analytics_readers&quot;:&quot;Readers&quot;,&quot;dashboard_analytics_comments&quot;:&quot;Comments&quot;,&quot;dashboard_analytics_reactions&quot;:&quot;Reactions&quot;,&quot;stats_by&quot;:&quot;by&quot;,&quot;editor_new_title&quot;:&quot;New post title here...&quot;,&quot;editor_body_placeholder&quot;:&quot;Write your post content here...&quot;,&quot;tags_field_label&quot;:&quot;Add up to 4 tags&quot;,&quot;tags_field_placeholder&quot;:&quot;Add up to 4 tags...&quot;,&quot;counted_organization&quot;:{&quot;one&quot;:&quot;%{count} organization&quot;,&quot;other&quot;:&quot;%{count} organizations&quot;},&quot;counted_user&quot;:{&quot;one&quot;:&quot;%{count} person&quot;,&quot;other&quot;:&quot;%{count} people&quot;},&quot;not_following&quot;:&quot;You're not following anyone&quot;,&quot;following_everyone&quot;:&quot;You're following %{details} (everyone)&quot;,&quot;you_are_following&quot;:&quot;You're following&quot;,&quot;and&quot;:&quot;and&quot;}}}\"></div>\n  </div>\n</div>\n    \n\n<footer id=\"footer\" class=\"crayons-footer print-hidden\">\n  <div id=\"footer-container\" class=\"crayons-footer__container\">\n\n\n        <style>\n  .long-bb-body {\n    max-height: calc(100vh - 200px);\n    overflow: hidden;\n  }\n  .long-bb-bottom {\n    height: 180px;\n    background: linear-gradient(to top, var(--card-bg), transparent);\n    margin-top: -180px;\n    position:relative;\n    z-index: 5;\n  }\n</style>\n\n  <div style=\"\" data-display-unit=\"\" data-id=\"146443\" data-category-click=\"click\" data-category-impression=\"impression\" data-context-type=\"home\" data-special=\"nothing\" data-article-id=\"\" data-type-of=\"in_house\">\n          <div class=\"crayons-card crayons-card--secondary crayons-bb bb-placement js-billboard\" style=\"display: inline-flex; flex-direction: column; align-items: center; margin: 0 auto 2rem auto; width: fit-content; padding: 2rem;\">\n        <p style=\"font-weight: bold; margin: 0 0 1rem 0;\">\n            \ud83d\udc8e DEV Diamond Sponsors\n        </p>\n        <p style=\"font-size: 0.8em; margin: 0 0 2rem 0;\">\n            Thank you to our Diamond Sponsors for supporting the DEV Community\n        </p>\n    \n        <div style=\"display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem;\">\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://aistudio.google.com/?utm_source=partner&amp;utm_medium=partner&amp;utm_campaign=FY25-Global-DEVpartnership-sponsorship-AIS&amp;utm_content=-&amp;utm_term=-&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjlyhbdqehj3akhz166w.png\" alt=\"Google AI - Official AI Model and Platform Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 54px; padding: 10px;\" loading=\"lazy\" width=\"2048\" height=\"472\">\n                </a>\n                <p style=\"text-align: center;\">Google AI is the official AI Model and Platform Partner of DEV</p>\n            </div>\n\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://neon.tech/?ref=devto&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl88cil6afxzmgwrgtt.png\" alt=\"Neon - Official Database Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Neon is the official database partner of DEV</p>\n            </div>\n    \n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv30ephnolfvnlwgwm0yz.png\" alt=\"Algolia - Official Search Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Algolia is the official search partner of DEV</p>\n            </div>\n        </div>\n    </div>\n  </div>\n\n\n    <p class=\"fs-s crayons-footer__description\">\n      <a class=\"c-link c-link--branded fw-medium\" aria-label=\"DEV Community Home\" href=\"/\">DEV Community</a> \u2014 A space to discuss and keep up software development and manage your software career\n    </p>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/\">\n      Home\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/about\">\n      About\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/contact\">\n      Contact\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"https://mlh.io/\">\n      MLH\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/code-of-conduct\">\n      Code of Conduct\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/privacy\">\n      Privacy Policy\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/terms\">\n      Terms of Use\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <div class=\"fs-s\">\n      <p>Built on <a class=\"c-link c-link--branded\" target=\"_blank\" rel=\"noopener\" href=\"https://www.forem.com\">Forem</a> \u2014 the <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/opensource\">open source</a> software that powers <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to\">DEV</a> and other inclusive communities.</p>\n      <p>Made with love and <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/rails\">Ruby on Rails</a>. DEV Community <span title=\"copyright\">\u00a9</span> 2016 - 2026.</p>\n    </div>\n  </div>\n</footer>\n<div id=\"snack-zone\"></div>\n\n    <div id=\"global-signup-modal\" class=\"authentication-modal hidden\">\n  <div class=\"authentication-modal__container\">\n    <figure class=\"authentication-modal__image-container\">\n      <img class=\"authentication-modal__image\" src=\"https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" alt=\"DEV Community\" loading=\"lazy\">\n    </figure>\n    <div class=\"authentication-modal__content\">\n      <p class=\"authentication-modal__description\">\n          We're a place where coders share, stay up-to-date and grow their careers.\n      </p>\n    </div>\n    <div class=\"authentication-modal__actions\">\n      <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"crayons-btn\" aria-label=\"Log in\" data-no-instant=\"\">\n        Log in\n      </a>\n      <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" class=\"crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account\" aria-label=\"Create new account\" data-no-instant=\"\">\n        Create account\n      </a>\n    </div>\n  </div>\n</div>\n\n<script src=\"https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js\" defer=\"defer\"></script>\n\n    <div id=\"cookie-consent\"></div>\n  <div id=\"reaction-category-resources\" class=\"hidden\" aria-hidden=\"true\">\n    <img data-name=\"Like\" data-slug=\"like\" data-position=\"1\" src=\"https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Unicorn\" data-slug=\"unicorn\" data-position=\"2\" src=\"https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Exploding Head\" data-slug=\"exploding_head\" data-position=\"3\" src=\"https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Raised Hands\" data-slug=\"raised_hands\" data-position=\"4\" src=\"https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Fire\" data-slug=\"fire\" data-position=\"5\" src=\"https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg\" width=\"18\" height=\"18\">\n</div>\n\n    <script>\n  var userSignedIn = false;\n  if (document.readyState === 'complete' || document.readyState === 'interactive') {\n    initAuth();\n  } else {\n    document.addEventListener('DOMContentLoaded', initAuth);\n  }\n\n  function initAuth() {\n    var paramToken = new URLSearchParams(window.location.search).get('jwt');\n\n    if (paramToken && !userSignedIn) {\n      authenticateUser(paramToken);\n    } else {\n      var iframe = document.createElement('iframe');\n      iframe.style.display = 'none';\n      iframe.src = 'https://forem.com/auth_pass/iframe';\n  \n      document.body.appendChild(iframe);\n  \n      window.addEventListener('message', function(event) {\n        if (event.origin !== 'https://forem.com' && event.origin !== window.location.origin) {\n          return;\n        }\n  \n        var data = event.data;\n  \n        if (data.authenticated && !userSignedIn) {\n          authenticateUser(data.token);\n        } else if(data.authenticated && window.ReactNativeWebView && window.ReactNativeWebView.postMessage) {\n          window.ReactNativeWebView.postMessage(JSON.stringify({\n            action: 'login',\n            token: data.token,\n          }));\n        }\n      });  \n    }\n\n    function authenticateUser(token) {\n      fetch('/auth_pass/token_login', {\n        method: 'POST',\n        credentials: 'include',\n        headers: {\n          'Content-Type': 'application/json',\n          'X-CSRF-Token': getMetaContent('csrf-token'),\n        },\n        body: JSON.stringify({ token: token }),\n      })\n      .then(function(response) {\n        return response.json();\n      })\n      .then(function(data) {\n        if (data.success) {\n          if (document.head.querySelector('meta[name=\"user-signed-in\"][content=\"false\"]')) {\n            // Reload the page to update the user's state\n            location.reload();\n          }\n        }\n      })\n      .catch(function(error) {\n        console.error('Error during authentication:', error);\n      });\n    }\n\n    function getMetaContent(name) {\n      var element = document.querySelector('meta[name=\"' + name + '\"]');\n      return element ? element.getAttribute('content') : '';\n    }\n  }\n</script>\n\n  \n  \n  \n  \n  \n<iframe src=\"https://forem.com/auth_pass/iframe\" style=\"display: none;\"></iframe><iframe scrolling=\"no\" frameborder=\"0\" allowtransparency=\"true\" src=\"https://platform.twitter.com/widgets/widget_iframe.2f70fb173b9000da126c79afe2098f02.html?origin=https%3A%2F%2Fdev.to\" title=\"Twitter settings iframe\" style=\"display: none;\"></iframe><iframe id=\"rufous-sandbox\" scrolling=\"no\" frameborder=\"0\" allowtransparency=\"true\" allowfullscreen=\"true\" style=\"position: absolute; visibility: hidden; display: none; width: 0px; height: 0px; padding: 0px; border: none;\" title=\"Twitter analytics iframe\"></iframe></body></html>",
  "cookies": null,
  "errors": null,
  "final_url": "https://dev.to/nicolaerario/comment/fe1e",
  "headers": {
    "accept-ranges": "bytes",
    "access-control-allow-origin": "*",
    "age": "88571",
    "cache-control": "public, no-cache",
    "content-encoding": "gzip",
    "content-length": "20395",
    "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to",
    "content-type": "text/html; charset=utf-8",
    "date": "Sat, 21 Mar 2026 10:45:43 GMT",
    "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
    "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
    "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
    "referrer-policy": "strict-origin-when-cross-origin",
    "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
    "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
    "server": "Heroku",
    "strict-transport-security": "max-age=31557600",
    "vary": "Accept-Encoding, X-Loggedin",
    "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
    "x-accel-expires": "172800",
    "x-cache": "HIT, HIT",
    "x-cache-hits": "26, 1",
    "x-content-type-options": "nosniff",
    "x-download-options": "noopen",
    "x-permitted-cross-domain-policies": "none",
    "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
    "x-runtime": "0.231911",
    "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100179-CHI",
    "x-timer": "S1774089944.558881,VS0,VE2",
    "x-xss-protection": "0"
  },
  "id": null,
  "scraper_data": null,
  "scraperouter": null,
  "screenshot_url": null,
  "status_code": 200
}

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Skip to content

Navigation menu [ ](/)

Search [ Powered by Algolia Search
](https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral)

[ Log in ](https://dev.to/enter?signup_subforem=1) [ Create account
](https://dev.to/enter?signup_subforem=1&state=new-user)

## DEV Community

Close

#  Discussion on: Django Cheat Sheet: Keep Credentials Secure with Environment
Variables

[View post](/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-
environment-variables-2ah5)

Collapse Expand



[ ](https://dev.to/nicolaerario)

[ Nicola Erario  ](https://dev.to/nicolaerario)

Nicola Erario

[ Nicola Erario  ](/nicolaerario)

Follow

  * Location 

Italy 🇮🇹

  * Joined 

Oct 18, 2018

• [ Sep 17 '19 ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe1e)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e)
  *   * Hide 
  *   * [Report abuse](/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e)
  * 

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG
= True or DEBUG = False in .env file are always evaluated as True

Like comment:  Like comment:  7 likes Like  Comment button Reply

Collapse Expand



[ ](https://dev.to/jamestimmins)

[ James Timmins  ](https://dev.to/jamestimmins)

James Timmins

[ James Timmins  ](/jamestimmins)

Follow

  * Joined 

Sep 19, 2018

• [ Sep 17 '19 ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe27)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27)
  *   * Hide 
  *   * [Report abuse](/report-abuse?url=https://dev.to/jamestimmins/comment/fe27)
  * 

Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you
can do.

  1. Explicitly check for a string value. DEBUG = (os.getenv("DEBUG") == 'true')
  2. Cast the val to a boolean DEBUG = bool(os.getenv("DEBUG")), and use an empty string to denote a false value `DEBUG=''`.
  3. Use a more fully-featured package like [django-environ](https://github.com/joke2k/django-environ). There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).

Like 
Truncated
<html lang="en" class="js-focus-visible" data-js-focus-visible=""><head>
    <meta charset="utf-8">
    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>
    
    <meta name="description" content="How to use environment variables to keep secure keys out of your code.">
    <meta name="keywords" content="software, coding, development, engineering, inclusive, community">

    <meta property="og:type" content="article">
    <meta property="og:title" content="Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables">
    <meta property="og:description" content="How to use environment variables to keep secure keys out of your code.">
    <meta property="og:site_name" content="DEV Community">
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:site" content="@thepracticaldev">
    <meta name="twitter:creator" content="@">
    <meta name="twitter:title" content="Django Cheat Sheet: Keep Credentials Secure with Environment Variables">
    <meta name="twitter:description" content="How to use environment variables to keep secure keys out of your code.">

      <link rel="canonical" href="https://dev.to/nicolaerario/comment/fe1e">
      <meta property="og:url" content="https://dev.to/nicolaerario/comment/fe1e">
      <meta property="og:title" content="How do you manage Boolean with python-dotenv? I... — DEV Community">
      <meta name="twitter:title" content="How do you manage Boolean with python-dotenv? I... — DEV Community">
      <meta property="og:image" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg">
      <meta name="twitter:image:src" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg">

      <meta name="last-updated" content="2026-03-20 10:09:32 UTC">
      <meta name="user-signed-in" content="false">
      <meta name="head-cached-at" content="1774001372">
      <meta name="environment" content="production">
      <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css" media="all" id="main-minimal-stylesheet">
<link rel="stylesheet" href="https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css" media="all" id="main-views-stylesheet">
<link rel="stylesheet" href="https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css" media="all" id="main-crayons-stylesheet">

      <script src="https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js" defer="defer"></script>
<script src="https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js" defer="defer"></script>

        <meta name="search-script" content="https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js">
      <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
      <link rel="icon" type="image/x-icon" href="https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="152x152" href="https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="180x180" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link rel="apple-touch-icon" sizes="167x167" href="https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <link href="https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="192x192">
      <link href="https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="128x128">
      <meta name="apple-mobile-web-app-title" content="dev.to">
      <meta name="application-name" content="dev.to">
      <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)">
      <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)">
      <link rel="search" href="https://dev.to/open-search.xml" type="application/opensearchdescription+xml" title="DEV Community">

      <meta property="forem:name" content="DEV Community">
      <meta property="forem:logo" content="https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png">
      <meta property="forem:domain" content="dev.to">
    
  <script src="//www.googletagmanager.com/gtag/js?id=G-TYEM8Y3JN3" async=""></script><meta name="csrf-param" content="authenticity_token"><meta name="csrf-token" content="CToQ3LFkEOX7xPcWAYxNtiOCparVBTLuEhDoDC9Dc82rxQmA5686Bd9MNYpf0AMiyjvqSFvMLgjpDUmaBSji5w"></head>
      <body class="sans-serif-article-body default-header" data-user-status="logged-out" data-is-root-subforem="false" data-subforem-id="1" data-side-nav-visible="false" data-community-name="DEV Community" data-subscription-icon="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" data-locale="en" data-honeybadger-key="hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr" data-deployed-at="2026-03-19T20:49:25Z" data-latest-commit-id="f47ae62cb2f25a529b1137abf7975d0e86324bf1" data-ga-tracking="UA-71991109-1" data-cookie-banner-user-context="logged_out_only" data-cookie-banner-platform-context="off" data-algolia-id="PRSOBFP46H" data-algolia-search-key="9aa7d31610cba78851c9b1f63776a9dd" data-algolia-display="true" data-dynamic-url-component="bmar11" data-ga4-tracking-id="G-TYEM8Y3JN3" data-runtime="Browser-Linux" data-follow-handler-initialized="true" data-loaded="true">
        
        <script>
          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {
            document.body.classList.add("hidden-shell");
          }
            if (new Date() > new Date("2026-02-04T09:00:00-05:00")) {
              document.body.dataset.sideNavVisible = "false";
            } 
        </script>

        <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css" media="all" id="secondary-minimal-stylesheet">
<link rel="stylesheet" href="https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css" media="all" id="secondary-views-stylesheet">
<link rel="stylesheet" href="https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css" media="all" id="secondary-crayons-stylesheet">

        <div id="body-styles">
          <style>
            :root {
              --accent-brand-lighter-rgb: 80, 99, 301;
              --accent-brand-rgb: 59, 73, 223;
              --accent-brand-darker-rgb: 47, 58, 178;
            }
          </style>
        </div>
        <div id="audiocontent" data-podcast="">
          
        </div>
        <div class="navigation-progress" id="navigation-progress"></div>

<header id="topbar" class="crayons-header topbar print-hidden">
  <span id="route-change-target" tabindex="-1"></span>
  <a href="#main-content" class="skip-content-link">Skip to content</a>
  <div class="crayons-header__container">
    <span class="inline-block m:hidden ">
      <button class="c-btn c-btn--icon-alone js-hamburger-trigger mx-2">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a9syj4ev9usghrj2cupgvw6aabjusk1t" class="crayons-icon"><title id="a9syj4ev9usghrj2cupgvw6aabjusk1t">Navigation menu</title>
    <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path>
</svg>

      </button>
    </span>
    <a href="/" class="site-logo" aria-label="DEV Community Home">
    <img class="site-logo__img" src="https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png" style="aspect-ratio: 10 / 8" alt="DEV Community">
</a>


    <div class="crayons-header--search js-search-form" id="header-search">
      <form accept-charset="UTF-8" method="get" action="/search" role="search">
        <div class="crayons-fields crayons-fields--horizontal">
          <div class="crayons-field flex-1 relative">
            <input id="search-input" class="crayons-header--search-input crayons-textfield js-search-input" type="text" name="q" placeholder="Find related posts..." autocomplete="off">
            <button type="submit" aria-label="Search" class="c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0">
              <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="asynyx1qxw5bjg880ehhj6dhqa8iosdc" aria-hidden="true" class="crayons-icon"><title id="asynyx1qxw5bjg880ehhj6dhqa8iosdc">Search</title>
    <path d="M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z"></path>
</svg>

            </button>

            <a class="crayons-header--search-brand-indicator" href="https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">
                Powered by Algolia
                <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" width="24" height="24" viewBox="0 0 500 500.34" role="img" aria-labelledby="amiqq4aj0vjjtdk14z4cq9fy0cjejhz5" aria-hidden="true" class="crayons-icon"><title id="amiqq4aj0vjjtdk14z4cq9fy0cjejhz5">Search</title>
  <defs></defs><path class="cls-1" d="M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z"></path>
</svg>

            </a>
          </div>
        </div>
      </form>
    </div>

    <div class="flex items-center h-100 ml-auto">
        <div class="flex" id="authentication-top-nav-actions">
          <span class="hidden m:block">
            <a href="https://dev.to/enter?signup_subforem=1" class="c-link c-link--block mr-2 whitespace-nowrap ml-auto" data-no-instant="">
              Log in
            </a>
          </span>

          <a href="https://dev.to/enter?signup_subforem=1&amp;state=new-user" data-tracking-id="ca_top_nav" data-tracking-source="top_navbar" class="c-cta c-cta--branded whitespace-nowrap mr-2" data-no-instant="">
            Create account
          </a>
        </div>
    </div>
  </div>
</header>

<div class="hamburger">
  <div class="hamburger__content">
    <header class="hamburger__content__header">
      <h2 class="fs-l fw-bold flex-1 break-word lh-tight">DEV Community</h2>

      <button class="c-btn c-btn--icon-alone js-hamburger-trigger shrink-0" aria-label="Close">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7jqca81wlh4sunhyocm20yteah4aqdu" aria-hidden="true" class="crayons-icon c-btn__icon"><title id="a7jqca81wlh4sunhyocm20yteah4aqdu">Close</title><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z"></path></svg>

      </button>
    </header>

    <div class="p-2 js-navigation-links-container" id="authentication-hamburger-actions">
    </div>
  </div>
  <div class="hamburger__overlay js-hamburger-trigger"></div>
</div>


        <div id="active-broadcast" class="broadcast-wrapper"></div>
<div id="page-content" class="wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760" data-current-page="comments-index">
  <div id="page-content-inner" data-internal-nav="false">
    <div id="page-route-change" class="screen-reader-only" aria-live="polite" aria-atomic="true"></div>

    <script src="https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js" defer="defer"></script>

  
<script src="https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js" defer="defer"></script>

<div class="crayons-layout crayons-layout--limited-l gap-0" data-follow-button-container="true">
    <span id="comment-article-indicator" data-article-id="172117"></span>

    <div id="response-templates-data" class="hidden"></div>
    <script src="https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js" defer="defer"></script>
    <header class="p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0">
        <h1 class="crayons-subtitle-1 mb-4">
          <span class="fw-normal color-base-60">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>
        </h1>
        <div class="flex">
          <a class="crayons-btn crayons-btn--outlined mr-2" href="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5">View post</a>
        </div>
    </header>


  <section class="crayons-card text-padding min-w-0 z-elevate" id="comments-container" data-commentable-id="172117" data-commentable-type="Article" data-commentable-author-id="102760" data-commentable-co-author-ids="">


    <div class="comments" id="comment-trees-container">
              <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-0
                    root
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="m:mx-1 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="am0hfruw7t7kbloxq90gm2u9chkb8rff" class="crayons-icon expanded"><title id="am0hfruw7t7kbloxq90gm2u9chkb8rff">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a60pbxfju0t7z027ra8mfcb5i35wrg6s" class="crayons-icon collapsed"><title id="a60pbxfju0t7z027ra8mfcb5i35wrg6s">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-273144" class="
      comment single-comment-node
      
      root
      comment--deep-0
      
    " data-comment-id="273144" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e" data-comment-author-id="108601" data-content-user-id="108601">
    <a name="comment-fe1e" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/nicolaerario" class="shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" alt="nicolaerario profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/nicolaerario" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Nicola Erario
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-273144" aria-controls="comment-profile-preview-content-273144" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Nicola Erario profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      Nicola Erario
      
    </button>
    <div id="comment-profile-preview-content-273144" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #160533; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/nicolaerario" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Nicola Erario
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Nicola Erario" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            Italy 🇮🇹 
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-10-18T15:20:33Z" class="date">Oct 18, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-17T18:02:26Z" class="date-short-year" title="Tuesday, September 17, 2019 at 6:02:26 PM">Sep 17 '19</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-273144" aria-controls="comment-dropdown-273144" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="akgq3k15dqu49j2fytbaaltxd0kpvll8" class="crayons-icon pointer-events-none"><title id="akgq3k15dqu49j2fytbaaltxd0kpvll8">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-273144" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Nicola Erario's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="108601" data-action="settings-button" data-path="https://dev.to/nicolaerario/comment/fe1e/settings" aria-label="Go to Nicola Erario's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="108601">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="273144" data-comment-url="https://dev.to/nicolaerario/comment/fe1e" aria-label="Hide Nicola Erario's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/nicolaerario/comment/fe1e/mod" aria-label="Moderate Nicola Erario's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e" aria-label="Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-273144" data-comment-id="273144" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 9;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3btu01xca2urgip0ej7lt2tshj6bs28" class="crayons-icon reaction-icon not-reacted"><title id="a3btu01xca2urgip0ej7lt2tshj6bs28">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a207ojso91c7liu3pwqmlfkjddpc2zco" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a207ojso91c7liu3pwqmlfkjddpc2zco">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-273144">7</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="273144" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e" data-tracking-name="comment_reply_button" data-testid="reply-button-273144" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahwvmev4joq47o1xnqyy2hn24vhmxtb4" class="crayons-icon reaction-icon not-reacted"><title id="ahwvmev4joq47o1xnqyy2hn24vhmxtb4">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amu86j05tb5rto5dwbol17xfyeew32qd" class="crayons-icon expanded"><title id="amu86j05tb5rto5dwbol17xfyeew32qd">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="agcra525od8yaymvu4prqj30npmizg4n" class="crayons-icon collapsed"><title id="agcra525od8yaymvu4prqj30npmizg4n">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-273163" class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    " data-comment-id="273163" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27" data-comment-author-id="102760" data-content-user-id="102760">
    <a name="comment-fe27" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/jamestimmins" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg" alt="jamestimmins profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/jamestimmins" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      James Timmins
    </span>
      <span class="crayons-hover-tooltip inline-block spec-op-author -mr-2" data-tooltip="Author">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" class="crayons-icon">
    <path d="M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z"></path>
</svg>

      </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-273163" aria-controls="comment-profile-preview-content-273163" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="James Timmins profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      James Timmins
      
    </button>
    <div id="comment-profile-preview-content-273163" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #002a9e; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/jamestimmins" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      James Timmins
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: James Timmins" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-09-19T16:58:25Z" class="date">Sep 19, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>

      <span class="crayons-hover-tooltip inline-block spec-op-author -ml-2" data-tooltip="Author">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" class="crayons-icon">
    <path d="M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z"></path>
</svg>

      </span>

  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-17T18:29:14Z" class="date-short-year" title="Tuesday, September 17, 2019 at 6:29:14 PM">Sep 17 '19</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-273163" aria-controls="comment-dropdown-273163" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7gmp3o0mt8lu9t1omyan1swl0w3k035" class="crayons-icon pointer-events-none"><title id="a7gmp3o0mt8lu9t1omyan1swl0w3k035">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-273163" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to James Timmins's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="102760" data-action="settings-button" data-path="https://dev.to/jamestimmins/comment/fe27/settings" aria-label="Go to James Timmins's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="102760">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="273163" data-comment-url="https://dev.to/jamestimmins/comment/fe27" aria-label="Hide James Timmins's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/jamestimmins/comment/fe27/mod" aria-label="Moderate James Timmins's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/jamestimmins/comment/fe27" aria-label="Report James Timmins's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/jamestimmins/comment/fe27" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>

<ol>
<li>Explicitly check for a string value. DEBUG = (os.getenv("DEBUG") == 'true')</li>
<li>Cast the val to a boolean DEBUG = bool(os.getenv("DEBUG")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>
<li>Use a more fully-featured package like <a href="https://github.com/joke2k/django-environ" rel="nofollow">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>
</ol>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-273163" data-comment-id="273163" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 8;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="acgeuroqpao89v1gqag5tnag1lzjbopd" class="crayons-icon reaction-icon not-reacted"><title id="acgeuroqpao89v1gqag5tnag1lzjbopd">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="alpwyiy7hd86mwy98dvfifgf6axh83az" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="alpwyiy7hd86mwy98dvfifgf6axh83az">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-273163">7</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="273163" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27" data-tracking-name="comment_reply_button" data-testid="reply-button-273163" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a37arejzrbksr1ryfcmai2lxbi18wfv9" class="crayons-icon reaction-icon not-reacted"><title id="a37arejzrbksr1ryfcmai2lxbi18wfv9">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ad4sa0cqju63trsnkxpdxa4f4dsoh3yn" class="crayons-icon expanded"><title id="ad4sa0cqju63trsnkxpdxa4f4dsoh3yn">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a3npi4krrvgdd27bjdm7498cnrep1iw0" class="crayons-icon collapsed"><title id="a3npi4krrvgdd27bjdm7498cnrep1iw0">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-359014" class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    " data-comment-id="359014" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26" data-comment-author-id="119873" data-content-user-id="119873">
    <a name="comment-kb26" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/bhupesh" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg" alt="bhupesh profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/bhupesh" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Bhupesh Varshney 👾
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-359014" aria-controls="comment-profile-preview-content-359014" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Bhupesh Varshney 👾 profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      Bhupesh Varshney 👾
      
    </button>
    <div id="comment-profile-preview-content-359014" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #0000bc; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/bhupesh" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Bhupesh Varshney 👾
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney 👾&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Bhupesh Varshney 👾" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Email
          </div>
          <div class="value">
            <a href="mailto:"></a>
          </div>
        </li>
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            New Delhi, India 🇮🇳
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-12-05T15:02:51Z" class="date">Dec 5, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2020-01-16T08:59:45Z" class="date-short-year" title="Thursday, January 16, 2020 at 8:59:45 AM">Jan 16 '20</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-359014" aria-controls="comment-dropdown-359014" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="adnjyxwg4pvhdki3fg0akoitopv6pfg1" class="crayons-icon pointer-events-none"><title id="adnjyxwg4pvhdki3fg0akoitopv6pfg1">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-359014" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Bhupesh Varshney 👾's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="119873" data-action="settings-button" data-path="https://dev.to/bhupesh/comment/kb26/settings" aria-label="Go to Bhupesh Varshney 👾's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="119873">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="359014" data-comment-url="https://dev.to/bhupesh/comment/kb26" aria-label="Hide Bhupesh Varshney 👾's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/bhupesh/comment/kb26/mod" aria-label="Moderate Bhupesh Varshney 👾's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/bhupesh/comment/kb26" aria-label="Report Bhupesh Varshney 👾's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/bhupesh/comment/kb26" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          

<p>thanks for this</p>



        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-359014" data-comment-id="359014" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 7;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aaqd7b0m9ebsm08ygyp5ap1r776nxmue" class="crayons-icon reaction-icon not-reacted"><title id="aaqd7b0m9ebsm08ygyp5ap1r776nxmue">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ab3h6paxnc5enxpz5190u3riq9y1tkc4" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="ab3h6paxnc5enxpz5190u3riq9y1tkc4">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-359014">1</span><span class="reactions-label hidden m:inline-block">&nbsp;like</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="359014" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26" data-tracking-name="comment_reply_button" data-testid="reply-button-359014" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aceqw4gqgqb3jxi544mvbyzdyyv9psv4" class="crayons-icon reaction-icon not-reacted"><title id="aceqw4gqgqb3jxi544mvbyzdyyv9psv4">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7qkh3osze31p5tx1sa37ss9h410885k" class="crayons-icon expanded"><title id="a7qkh3osze31p5tx1sa37ss9h410885k">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ap76c9hto972y44k19vq49h1o4ipe73a" class="crayons-icon collapsed"><title id="ap76c9hto972y44k19vq49h1o4ipe73a">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-1107596" class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    " data-comment-id="1107596" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm" data-comment-author-id="1215611" data-content-user-id="1215611">
    <a name="comment-2b0bm" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/eftehassanpp" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png" alt="eftehassanpp profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/eftehassanpp" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      eftehassanpp
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1107596" aria-controls="comment-profile-preview-content-1107596" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="eftehassanpp profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      eftehassanpp
      
    </button>
    <div id="comment-profile-preview-content-1107596" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/eftehassanpp" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      eftehassanpp
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: eftehassanpp" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>
  <div class="color-base-70">
    Full stack Web Developer
  </div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2023-11-21T21:33:36Z" class="date">Nov 21, 2023</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2023-11-21T21:37:14Z" class="date-short-year" title="Tuesday, November 21, 2023 at 9:37:14 PM">Nov 21 '23</time>

    <span class="hidden m:inline-block">• Edited on <time datetime="2023-11-21T21:37:49Z" class="date-no-year" title="Tuesday, November 21, 2023 at 9:37:49 PM">Nov 21</time></span>
    <span class="m:hidden">• Edited</span>
</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1107596" aria-controls="comment-dropdown-1107596" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="anqysk9wz3k463ox4nph62xear0d3p4w" class="crayons-icon pointer-events-none"><title id="anqysk9wz3k463ox4nph62xear0d3p4w">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1107596" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to eftehassanpp's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="1215611" data-action="settings-button" data-path="https://dev.to/eftehassanpp/comment/2b0bm/settings" aria-label="Go to eftehassanpp's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="1215611">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="1107596" data-comment-url="https://dev.to/eftehassanpp/comment/2b0bm" aria-label="Hide eftehassanpp's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/eftehassanpp/comment/2b0bm/mod" aria-label="Moderate eftehassanpp's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm" aria-label="Report eftehassanpp's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>
<strong>import json</strong><br>
<strong>DEBUG = json.loads(os.getenv("DEBUG"))<br>
if DEBUG:<br>
    print("Debugging")</strong></p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-1107596" data-comment-id="1107596" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 6;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ahjjbveswr6gcaqryfz4gyd2zgdwm4ze" class="crayons-icon reaction-icon not-reacted"><title id="ahjjbveswr6gcaqryfz4gyd2zgdwm4ze">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="abwchupp63so33156spria10r4l8m637" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="abwchupp63so33156spria10r4l8m637">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count hidden">0</span><span class="reactions-label hidden m:inline-block"></span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="1107596" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm" data-tracking-name="comment_reply_button" data-testid="reply-button-1107596" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a3k1um56f8mzdqx2wg98m4ysf5jotnf5" class="crayons-icon reaction-icon not-reacted"><title id="a3k1um56f8mzdqx2wg98m4ysf5jotnf5">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a90ink3joapm9ddh1hq32wcrnt0gvn71" class="crayons-icon expanded"><title id="a90ink3joapm9ddh1hq32wcrnt0gvn71">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a2qx85oskkj1aic7osf7czppfjrosxg3" class="crayons-icon collapsed"><title id="a2qx85oskkj1aic7osf7czppfjrosxg3">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-274947" class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    " data-comment-id="274947" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin" data-comment-author-id="230500" data-content-user-id="230500">
    <a name="comment-fgin" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/anshsaini" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg" alt="anshsaini profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/anshsaini" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Ansh Saini
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-274947" aria-controls="comment-profile-preview-content-274947" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Ansh Saini profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      Ansh Saini
      
    </button>
    <div id="comment-profile-preview-content-274947" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #aaa1e0; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/anshsaini" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Ansh Saini
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Ansh Saini" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>
  <div class="color-base-70">
    Here to share my knowledge and learn new things, then share those as well.
  </div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            New Delhi, India
          </div>
        </li>
          <li>
            <div class="key">
              Education
            </div>
            <div class="value">
              Bachelor's Degree in Computer Science
            </div>
          </li>
          <li>
            <div class="key">
              Work
            </div>
            <div class="value">
              Software Development Manager at Suraasa
            </div>
          </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2019-09-16T11:14:42Z" class="date">Sep 16, 2019</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-19T18:08:31Z" class="date-short-year" title="Thursday, September 19, 2019 at 6:08:31 PM">Sep 19 '19</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-274947" aria-controls="comment-dropdown-274947" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ajnrdgcw29lhl494uqrcvs642eq8pcfs" class="crayons-icon pointer-events-none"><title id="ajnrdgcw29lhl494uqrcvs642eq8pcfs">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-274947" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Ansh Saini's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="230500" data-action="settings-button" data-path="https://dev.to/anshsaini/comment/fgin/settings" aria-label="Go to Ansh Saini's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="230500">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="274947" data-comment-url="https://dev.to/anshsaini/comment/fgin" aria-label="Hide Ansh Saini's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/anshsaini/comment/fgin/mod" aria-label="Moderate Ansh Saini's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/anshsaini/comment/fgin" aria-label="Report Ansh Saini's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/anshsaini/comment/fgin" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          

<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>



        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-274947" data-comment-id="274947" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 5;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ajn1movjhp9pjktahx5eie34nb5xkz92" class="crayons-icon reaction-icon not-reacted"><title id="ajn1movjhp9pjktahx5eie34nb5xkz92">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="afu01rt9305glx5lva9zn1eoy3gmcvv8" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="afu01rt9305glx5lva9zn1eoy3gmcvv8">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-274947">2</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="274947" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin" data-tracking-name="comment_reply_button" data-testid="reply-button-274947" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="asi6g1r8jhe0pamnlr7xyglvrmazj0ta" class="crayons-icon reaction-icon not-reacted"><title id="asi6g1r8jhe0pamnlr7xyglvrmazj0ta">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a937zwu2zlm2i1loif46c4ce0g8yvgeb" class="crayons-icon expanded"><title id="a937zwu2zlm2i1loif46c4ce0g8yvgeb">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="atrycgt3bqhom1hcs1p3jm4bkt5ix4ra" class="crayons-icon collapsed"><title id="atrycgt3bqhom1hcs1p3jm4bkt5ix4ra">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-274987" class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    " data-comment-id="274987" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb" data-comment-author-id="108601" data-content-user-id="108601">
    <a name="comment-fgkb" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/nicolaerario" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" alt="nicolaerario profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/nicolaerario" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Nicola Erario
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-274987" aria-controls="comment-profile-preview-content-274987" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Nicola Erario profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      Nicola Erario
      
    </button>
    <div id="comment-profile-preview-content-274987" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #160533; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/nicolaerario" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Nicola Erario
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Nicola Erario" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
        <li>
          <div class="key">
            Location
          </div>
          <div class="value">
            Italy 🇮🇹 
          </div>
        </li>
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2018-10-18T15:20:33Z" class="date">Oct 18, 2018</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2019-09-19T19:03:55Z" class="date-short-year" title="Thursday, September 19, 2019 at 7:03:55 PM">Sep 19 '19</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-274987" aria-controls="comment-dropdown-274987" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ascp2zgq843l3hjiwbkueo1hyk2e9y4r" class="crayons-icon pointer-events-none"><title id="ascp2zgq843l3hjiwbkueo1hyk2e9y4r">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-274987" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Nicola Erario's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="108601" data-action="settings-button" data-path="https://dev.to/nicolaerario/comment/fgkb/settings" aria-label="Go to Nicola Erario's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="108601">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="274987" data-comment-url="https://dev.to/nicolaerario/comment/fgkb" aria-label="Hide Nicola Erario's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/nicolaerario/comment/fgkb/mod" aria-label="Moderate Nicola Erario's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb" aria-label="Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          

<p>Sure! After time spent to True this, False that... and your app lives of it’s own life </p>



        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-274987" data-comment-id="274987" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 4;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a90c9akrxlwhzqlm6zbh2cl437mm8m4w" class="crayons-icon reaction-icon not-reacted"><title id="a90c9akrxlwhzqlm6zbh2cl437mm8m4w">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7u21cjq73ezwmhylwvn3maoxmjb805x" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a7u21cjq73ezwmhylwvn3maoxmjb805x">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-274987">2</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="274987" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb" data-tracking-name="comment_reply_button" data-testid="reply-button-274987" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aqbnn7m38ze35s566cpzbxp8zc67xkyj" class="crayons-icon reaction-icon not-reacted"><title id="aqbnn7m38ze35s566cpzbxp8zc67xkyj">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-1
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ab4azljunvkclho839543mrgdhe8uanf" class="crayons-icon expanded"><title id="ab4azljunvkclho839543mrgdhe8uanf">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a18zu1yfzvcynrxsx4j1npp6npq3sdl7" class="crayons-icon collapsed"><title id="a18zu1yfzvcynrxsx4j1npp6npq3sdl7">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-712982" class="
      comment single-comment-node
      
      child
      comment--deep-1
      
    " data-comment-id="712982" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia" data-comment-author-id="201500" data-content-user-id="201500">
    <a name="comment-1eeia" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/guettli" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg" alt="guettli profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/guettli" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      Thomas Güttler
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-712982" aria-controls="comment-profile-preview-content-712982" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="Thomas Güttler profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      Thomas Güttler
      
    </button>
    <div id="comment-profile-preview-content-712982" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #002a9e; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/guettli" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      Thomas Güttler
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas Güttler&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: Thomas Güttler" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2019-07-25T13:33:46Z" class="date">Jul 25, 2019</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2021-05-13T19:37:19Z" class="date-short-year" title="Thursday, May 13, 2021 at 7:37:19 PM">May 13 '21</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-712982" aria-controls="comment-dropdown-712982" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a7alnuoz5ampzvua5h7ww511cbk31t1c" class="crayons-icon pointer-events-none"><title id="a7alnuoz5ampzvua5h7ww511cbk31t1c">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-712982" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to Thomas Güttler's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="201500" data-action="settings-button" data-path="https://dev.to/guettli/comment/1eeia/settings" aria-label="Go to Thomas Güttler's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="201500">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="712982" data-comment-url="https://dev.to/guettli/comment/1eeia" aria-label="Hide Thomas Güttler's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/guettli/comment/1eeia/mod" aria-label="Moderate Thomas Güttler's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/guettli/comment/1eeia" aria-label="Report Thomas Güttler's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/guettli/comment/1eeia" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>Don't ask my why the author did not accept my PR: <a href="https://github.com/theskumar/python-dotenv/pull/293/files" rel="nofollow noopener noreferrer" target="_blank">github.com/theskumar/python-dotenv...</a></p>

<h3>
  <a name="converting-types" href="#converting-types">
  </a>
  Converting types
</h3>

<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>

<p>Example:<br>
</p>

<div class="highlight js-code-highlight">
<pre class="highlight python"><code><span class="kn">from</span> <span class="n">distutils.util</span> <span class="kn">import</span> <span class="n">strtobool</span>
<span class="n">DEBUG</span> <span class="o">=</span> <span class="nf">bool</span><span class="p">(</span><span class="nf">strtobool</span><span class="p">(</span><span class="n">os</span><span class="p">.</span><span class="nf">getenv</span><span class="p">(</span><span class="sh">'</span><span class="s">DEBUG</span><span class="sh">'</span><span class="p">,</span> <span class="sh">'</span><span class="s">True</span><span class="sh">'</span><span class="p">)))</span>
</code></pre>
<div class="highlight__panel js-actions-panel">
<div class="highlight__panel-action js-fullscreen-code-action">
    <svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" class="highlight-action crayons-icon highlight-action--fullscreen-on"><title>Enter fullscreen mode</title>
    <path d="M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z"></path>
</svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="20px" height="20px" viewBox="0 0 24 24" class="highlight-action crayons-icon highlight-action--fullscreen-off"><title>Exit fullscreen mode</title>
    <path d="M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z"></path>
</svg>

</div>
</div>
</div>




        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-712982" data-comment-id="712982" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 3;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a1mk97ycs93jegn3xavxhb8xfgsfkw3d" class="crayons-icon reaction-icon not-reacted"><title id="a1mk97ycs93jegn3xavxhb8xfgsfkw3d">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amicadhcf0ecg45qix2h8bneakx329li" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="amicadhcf0ecg45qix2h8bneakx329li">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-712982">4</span><span class="reactions-label hidden m:inline-block">&nbsp;likes</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="712982" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia" data-tracking-name="comment_reply_button" data-testid="reply-button-712982" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aix6zq952ei8477ykobai8errhmtgk28" class="crayons-icon reaction-icon not-reacted"><title id="aix6zq952ei8477ykobai8errhmtgk28">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="at7u3o4n8y9ewox1cowczmwqf7t9xj8e" class="crayons-icon expanded"><title id="at7u3o4n8y9ewox1cowczmwqf7t9xj8e">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aqqgamrqupo07w83avfsaypdfc38f2h8" class="crayons-icon collapsed"><title id="aqqgamrqupo07w83avfsaypdfc38f2h8">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-1322245" class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    " data-comment-id="1322245" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf" data-comment-author-id="2562290" data-content-user-id="2562290">
    <a name="comment-2n5pf" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/derrick_k_429f36beeddff99" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg" alt="derrick_k_429f36beeddff99 profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/derrick_k_429f36beeddff99" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      derrick k
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1322245" aria-controls="comment-profile-preview-content-1322245" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="derrick k profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      derrick k
      
    </button>
    <div id="comment-profile-preview-content-1322245" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/derrick_k_429f36beeddff99" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      derrick k
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: derrick k" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2024-12-12T14:19:12Z" class="date">Dec 12, 2024</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2025-04-19T04:12:37Z" class="date-short-year" title="Saturday, April 19, 2025 at 4:12:37 AM">Apr 19 '25</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1322245" aria-controls="comment-dropdown-1322245" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ah7e12qgpvpgv7lg5h12h1hg8gsc35dy" class="crayons-icon pointer-events-none"><title id="ah7e12qgpvpgv7lg5h12h1hg8gsc35dy">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1322245" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to derrick k's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="2562290" data-action="settings-button" data-path="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings" aria-label="Go to derrick k's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="2562290">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="1322245" data-comment-url="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf" aria-label="Hide derrick k's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod" aria-label="Moderate derrick k's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf" aria-label="Report derrick k's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>I agree, it works perfectly</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-1322245" data-comment-id="1322245" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 2;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a6w8iq5f90v5v8mu1tvdl5prq64nfxzn" class="crayons-icon reaction-icon not-reacted"><title id="a6w8iq5f90v5v8mu1tvdl5prq64nfxzn">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a2jrd7kzxnp7are2sy91mt0g2y1op9e2" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="a2jrd7kzxnp7are2sy91mt0g2y1op9e2">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count" id="reactions-count-1322245">1</span><span class="reactions-label hidden m:inline-block">&nbsp;like</span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="1322245" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf" data-tracking-name="comment_reply_button" data-testid="reply-button-1322245" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a71tibt5ws2dqqc3quhiva4b5wgoo31c" class="crayons-icon reaction-icon not-reacted"><title id="a71tibt5ws2dqqc3quhiva4b5wgoo31c">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>
    <details class="comment-wrapper js-comment-wrapper comment-wrapper--deep-2
                    child
                    " open="">
      <summary aria-label="Toggle this comment (and replies)" data-tracking-name="expand_comment_toggle">
        <span class="mx-0 inline-block align-middle">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="abi2ffrim2fmctcrxzumsbpv3ppxw8hx" class="crayons-icon expanded"><title id="abi2ffrim2fmctcrxzumsbpv3ppxw8hx">Collapse</title>
    <path d="M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z"></path>
</svg>

          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="atcipprtb6yh2byyphfnhsbchu8x18k0" class="crayons-icon collapsed"><title id="atcipprtb6yh2byyphfnhsbchu8x18k0">Expand</title>
    <path d="M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z"></path>
</svg>

        </span>
        <span class="js-collapse-comment-content inline-block align-middle"></span>
      </summary>
  <div id="comment-node-1228782" class="
      comment single-comment-node
      
      child
      comment--deep-2
      
    " data-comment-id="1228782" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim" data-comment-author-id="1625827" data-content-user-id="1625827">
    <a name="comment-2hnim" style="position: absolute; top: -8px;">&nbsp;</a>
    
<div class="comment__inner">
    <a href="https://dev.to/niceguydave" class="shrink-0 crayons-avatar mt-4">
    <img class="crayons-avatar__image" width="32" height="32" src="https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg" alt="niceguydave profile image" loading="lazy">
  </a>


  <div class="inner-comment comment__details">
    <div class="comment__content crayons-card">
        


        <div class="comment__header">
  <a href="https://dev.to/niceguydave" class="crayons-link crayons-link--secondary flex items-center fw-medium m:hidden">
    <span class="js-comment-username">
      David Talbot
    </span>
  </a>
  <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block">
    <button id="comment-profile-preview-trigger-1228782" aria-controls="comment-profile-preview-content-1228782" class="profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost" aria-label="David Talbot profile details" aria-expanded="false" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      David Talbot
      
    </button>
    <div id="comment-profile-preview-content-1228782" class="profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown" style="--card-color: #000000; border-top-color: var(--card-color);" data-testid="profile-preview-card" data-repositioning-dropdown="true">
    <div class="gap-4 grid">
        <div class="-mt-4">
  <a href="/niceguydave" class="flex">
    <span class="crayons-avatar crayons-avatar--xl  mr-2 shrink-0">
      <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg" class="crayons-avatar__image" alt="" loading="lazy">
    </span>
    <span class="crayons-link crayons-subtitle-2 mt-5">
      David Talbot
      
    </span>
  </a>
</div>

<div class="print-hidden">
  <button name="button" type="button" data-info="{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}" class="crayons-btn follow-action-button whitespace-nowrap w-100 follow-user" aria-label="Follow user: David Talbot" aria-pressed="false" data-fetched="fetched">Follow</button>
</div>

  <div class="user-metadata-details">
    <ul class="user-metadata-details-inner">
      <li>
        <div class="key">
          Joined
        </div>
        <div class="value">
          <time datetime="2024-06-14T12:03:32Z" class="date">Jun 14, 2024</time>
        </div>
      </li>
    </ul>
  </div>

    </div>
</div>


  </div>

  <span class="color-base-30 px-2 m:pl-0" role="presentation">•</span>

<a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim" class="comment-date crayons-link crayons-link--secondary fs-s">
  <time datetime="2024-09-04T09:09:28Z" class="date-short-year" title="Wednesday, September 4, 2024 at 9:09:28 AM">Sep 4 '24</time>

</a>


  <div class="comment__dropdown" data-tracking-name="comment_dropdown">
    <button id="comment-dropdown-trigger-1228782" aria-controls="comment-dropdown-1228782" aria-expanded="false" class="dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon " aria-label="Toggle dropdown menu" aria-haspopup="true" data-dropdown-initialized="true" data-initialized="true">
      <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="aclks2g2l2bow740sya6k4kff7mjsiuv" class="crayons-icon pointer-events-none"><title id="aclks2g2l2bow740sya6k4kff7mjsiuv">Dropdown menu</title>
    <path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"></path>
</svg>

    </button>
    <div id="comment-dropdown-1228782" class="crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown">
      <ul class="m-0">
        <li><a href="https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim" class="crayons-link crayons-link--block permalink-copybtn" aria-label="Copy link to David Talbot's comment" data-no-instant="">Copy link</a></li>
        <li class="comment-actions hidden" data-user-id="1625827" data-action="settings-button" data-path="https://dev.to/niceguydave/comment/2hnim/settings" aria-label="Go to David Talbot's comment settings"></li>
          <li class="comment-actions hidden" data-action="hide-button" data-commentable-user-id="102760" data-user-id="1625827">
              <button class="flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment" data-hide-type="hide" data-comment-id="1228782" data-comment-url="https://dev.to/niceguydave/comment/2hnim" aria-label="Hide David Talbot's comment">
                Hide
              </button>
          </li>
        <li class="mod-actions hidden mod-actions-comment-button" data-path="https://dev.to/niceguydave/comment/2hnim/mod" aria-label="Moderate David Talbot's comment"></li>
        <li class="report-abuse-link-wrapper" data-path="/report-abuse?url=https://dev.to/niceguydave/comment/2hnim" aria-label="Report David Talbot's comment as abusive or violating our code of conduct and/or terms and conditions"><a href="/report-abuse?url=https://dev.to/niceguydave/comment/2hnim" class="crayons-link crayons-link--block">Report abuse</a></li>
        <li class="current-user-actions"></li>
      </ul>
    </div>
  </div>
</div>


        <div class="
            comment__body
            text-styles
            text-styles--secondary
            body
            
            
          ">
          <p>This is really helpful, thanks. Agreed—it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>


        </div>

    </div>

    <script>
    </script>

    <footer class="comment__footer print-hidden">
  <button class="crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button" id="button-for-comment-1228782" data-comment-id="1228782" aria-label="like" data-tracking-name="comment_heart_button" aria-pressed="false" style="z-index: 1;">
    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="al2238nmtzvbhzqi2yywrpxgjdejg8pi" class="crayons-icon reaction-icon not-reacted"><title id="al2238nmtzvbhzqi2yywrpxgjdejg8pi">Like comment: </title><path d="M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z"></path></svg>

    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="apba72bjxcxsgi9yze6l7sl4vednujll" class="crayons-icon crayons-icon reaction-icon--like reaction-icon reacted"><title id="apba72bjxcxsgi9yze6l7sl4vednujll">Like comment: </title>
    <path d="M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z"></path>
</svg>

    <span class="reactions-count hidden">0</span><span class="reactions-label hidden m:inline-block"></span>
    <span data-testid="tooltip" class="crayons-tooltip__content">
      Like
    </span>
  </button>

      <button class="actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex" data-comment-id="1228782" data-path="/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim" data-tracking-name="comment_reply_button" data-testid="reply-button-1228782" rel="nofollow">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a310ex3qenwsd4ez2fili98qg92olabo" class="crayons-icon reaction-icon not-reacted"><title id="a310ex3qenwsd4ez2fili98qg92olabo">Comment button</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg>

        <span class="hidden m:inline-block">Reply</span>
      </button>

</footer>

  </div>
</div>


  </div>
    </details>


  </div>
    </details>


  </div>
    </details>

    </div>

  </section>

  <div class="py-6">
    <nav class="fs-s align-center block" aria-label="Conduct controls">
  <a href="/code-of-conduct" class="crayons-link crayons-link--secondary">Code of Conduct</a>
  <span class="opacity-25 px-2" role="presentation">•</span>
  <a href="/report-abuse" class="crayons-link crayons-link--secondary">Report abuse</a>
</nav>

  </div>
</div>

<div class="fullscreen-code js-fullscreen-code"></div>

<script>
    // Listen for resize events and match them to the iframe
  window.addEventListener('message', function(event) {
    if (event.origin.startsWith('https://platform.twitter.com')) {
        var iframes = document.getElementsByTagName('iframe');
        for (var i = 0; i < iframes.length; i++) {
          if (event.source === iframes[i].contentWindow) { // iframes which match the event
            var iframe = iframes[i];
            var data = event.data['twttr.embed'];
            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {
              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';
              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';
              iframe.style.width = data['params']['0']['width'] + 'px !important';
            }
            break;
          }
        }
    }
}, false);

// Legacy support: We have shifted up how we render tweets, but still need to render
// the old way for old embed. This could eventually be removed.
var videoPreviews = document.getElementsByClassName("ltag__twitter-tweet__media__video-wrapper");
[].forEach.call(videoPreviews, function(el) {
  el.onclick = function(e) {
    var divHeight = el.offsetHeight;
    el.style.maxHeight = divHeight + "px";
    el.getElementsByClassName("ltag__twitter-tweet__media--video-preview")[0].style.display = "none";
    el.getElementsByClassName("ltag__twitter-tweet__video")[0].style.display = "block";
    el.getElementsByTagName("video")[0].play();
  }
});
var tweets = document.getElementsByClassName("ltag__twitter-tweet__main");
[].forEach.call(tweets, function(tweet){
  tweet.onclick = function(e) {
    if (e.target.nodeName == "A" || e.target.parentElement.nodeName == "A") {
      return;
    }
    window.open(tweet.dataset.url,"_blank");
  }
});

  
  var waitingOnPodcast = setInterval(function() {
  if (typeof initializePodcastPlayback !== 'undefined') {
    initializePodcastPlayback();
    clearInterval(waitingOnPodcast);
  }
}, 1);

  
  function activateRunkitTags() {
  if (!areAnyRunkitTagsPresent())
    return

  var checkRunkit = setInterval(function() {
    try {
      dynamicallyLoadRunkitLibrary()

      if (typeof(RunKit) === 'undefined') {
        return
      }

      replaceTagContentsWithRunkitWidget()
      clearInterval(checkRunkit);
    } catch(e) {
      console.error(e);
      clearInterval(checkRunkit);
    }
  }, 200);
}

function isRunkitTagAlreadyActive(runkitTag) {
  return runkitTag.querySelector("iframe") !== null;
};

function areAnyRunkitTagsPresent() {
  var presentRunkitTags = document.getElementsByClassName("runkit-element");

  return presentRunkitTags.length > 0
}

function replaceTagContentsWithRunkitWidget() {
  var targets = document.getElementsByClassName("runkit-element");
  for (var i = 0; i < targets.length; i++) {
    if (isRunkitTagAlreadyActive(targets[i])) {
      continue;
    }

    var wrapperContent = targets[i].textContent;
    if (/^(<iframe src)/.test(wrapperContent) === false) {
      if (targets[i].children.length > 0) {
        var preamble = targets[i].children[0].textContent;
        var content = targets[i].children[1].textContent;
        targets[i].innerHTML = "";
        var notebook = RunKit.createNotebook({
          element: targets[i],
          source: content,
          preamble: preamble
        });
      }
    }
  }
};

function dynamicallyLoadRunkitLibrary() {
  if (typeof(dynamicallyLoadScript) === "undefined")
    return

  dynamicallyLoadScript("//embed.runkit.com")
}

activateRunkitTags();

</script>
<script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


<div id="hide-comments-modal" class="hidden">
  <form id="hide-comments-modal__form" class="hide-comments-modal__form" data-type="json" action="/comments/hide" accept-charset="UTF-8" data-remote="true" method="post"><input name="utf8" type="hidden" value="✓" autocomplete="off"><input type="hidden" name="_method" value="patch" autocomplete="off"><input type="hidden" name="authenticity_token" value="hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ" autocomplete="off">
    <div class="hide-comments-modal__content">
      <p class="pb-2">
        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id="hide-comments-modal__comment-permalink" href="#">permalink</a>.
      </p>
      <label class="crayons-field crayons-field--checkbox my-2">
        <input name="hide_children" type="hidden" value="0" autocomplete="off"><input class="hide_children crayons-checkbox" type="checkbox" value="1" name="hide_children" id="hide_children">
        <p class="crayons-field__label">Hide child comments as well</p>
      </label>
      <p class="pb-4 pt-2">
        <button type="submit" class="crayons-btn">
          Confirm
        </button>
      </p>
    </div>
</form>  <p class="fs-s color-base-60">For further actions, you may consider blocking this person and/or <a id="hide-comments-modal__report-link" href="/report-abuse">reporting abuse</a></p>
</div>


    <div id="runtime-banner-container"></div>
    <div id="i18n-translations" data-translations="{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Followi

Response Headers

Request Options

{
  "proxy": {
    "type": "datacenter"
  },
  "url": "https://dev.to/nicolaerario/comment/fe1e"
}

No network requests captured.

Network capture is only available for browser-based scrapers (Playwright, Scrapling).

Protections

No protection findings were detected for this method.

Scraper Response Data

Response payload
{
  "content": "<html lang=\"en\" class=\"js-focus-visible\" data-js-focus-visible=\"\"><head>\n    <meta charset=\"utf-8\">\n    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>\n    \n    <meta name=\"description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta name=\"keywords\" content=\"software, coding, development, engineering, inclusive, community\">\n\n    <meta property=\"og:type\" content=\"article\">\n    <meta property=\"og:title\" content=\"Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta property=\"og:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta property=\"og:site_name\" content=\"DEV Community\">\n    <meta name=\"twitter:card\" content=\"summary_large_image\">\n    <meta name=\"twitter:site\" content=\"@thepracticaldev\">\n    <meta name=\"twitter:creator\" content=\"@\">\n    <meta name=\"twitter:title\" content=\"Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta name=\"twitter:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n\n      <link rel=\"canonical\" href=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:url\" content=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta name=\"twitter:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta property=\"og:image\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n      <meta name=\"twitter:image:src\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n\n      <meta name=\"last-updated\" content=\"2026-03-20 10:09:32 UTC\">\n      <meta name=\"user-signed-in\" content=\"false\">\n      <meta name=\"head-cached-at\" content=\"1774001372\">\n      <meta name=\"environment\" content=\"production\">\n      <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"main-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"main-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"main-crayons-stylesheet\">\n\n      <script src=\"https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js\" defer=\"defer\"></script>\n\n        <meta name=\"search-script\" content=\"https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js\">\n      <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, viewport-fit=cover\">\n      <link rel=\"icon\" type=\"image/x-icon\" href=\"https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"152x152\" href=\"https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"167x167\" href=\"https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"192x192\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"128x128\">\n      <meta name=\"apple-mobile-web-app-title\" content=\"dev.to\">\n      <meta name=\"application-name\" content=\"dev.to\">\n      <meta name=\"theme-color\" content=\"#ffffff\" media=\"(prefers-color-scheme: light)\">\n      <meta name=\"theme-color\" content=\"#000000\" media=\"(prefers-color-scheme: dark)\">\n      <link rel=\"search\" href=\"https://dev.to/open-search.xml\" type=\"application/opensearchdescription+xml\" title=\"DEV Community\">\n\n      <meta property=\"forem:name\" content=\"DEV Community\">\n      <meta property=\"forem:logo\" content=\"https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <meta property=\"forem:domain\" content=\"dev.to\">\n    \n  <script src=\"//www.googletagmanager.com/gtag/js?id=G-TYEM8Y3JN3\" async=\"\"></script><meta name=\"csrf-param\" content=\"authenticity_token\"><meta name=\"csrf-token\" content=\"CToQ3LFkEOX7xPcWAYxNtiOCparVBTLuEhDoDC9Dc82rxQmA5686Bd9MNYpf0AMiyjvqSFvMLgjpDUmaBSji5w\"></head>\n      <body class=\"sans-serif-article-body default-header\" data-user-status=\"logged-out\" data-is-root-subforem=\"false\" data-subforem-id=\"1\" data-side-nav-visible=\"false\" data-community-name=\"DEV Community\" data-subscription-icon=\"https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png\" data-locale=\"en\" data-honeybadger-key=\"hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr\" data-deployed-at=\"2026-03-19T20:49:25Z\" data-latest-commit-id=\"f47ae62cb2f25a529b1137abf7975d0e86324bf1\" data-ga-tracking=\"UA-71991109-1\" data-cookie-banner-user-context=\"logged_out_only\" data-cookie-banner-platform-context=\"off\" data-algolia-id=\"PRSOBFP46H\" data-algolia-search-key=\"9aa7d31610cba78851c9b1f63776a9dd\" data-algolia-display=\"true\" data-dynamic-url-component=\"bmar11\" data-ga4-tracking-id=\"G-TYEM8Y3JN3\" data-runtime=\"Browser-Linux\" data-follow-handler-initialized=\"true\" data-loaded=\"true\">\n        \n        <script>\n          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {\n            document.body.classList.add(\"hidden-shell\");\n          }\n            if (new Date() > new Date(\"2026-02-04T09:00:00-05:00\")) {\n              document.body.dataset.sideNavVisible = \"false\";\n            } \n        </script>\n\n        <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"secondary-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"secondary-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"secondary-crayons-stylesheet\">\n\n        <div id=\"body-styles\">\n          <style>\n            :root {\n              --accent-brand-lighter-rgb: 80, 99, 301;\n              --accent-brand-rgb: 59, 73, 223;\n              --accent-brand-darker-rgb: 47, 58, 178;\n            }\n          </style>\n        </div>\n        <div id=\"audiocontent\" data-podcast=\"\">\n          \n        </div>\n        <div class=\"navigation-progress\" id=\"navigation-progress\"></div>\n\n<header id=\"topbar\" class=\"crayons-header topbar print-hidden\">\n  <span id=\"route-change-target\" tabindex=\"-1\"></span>\n  <a href=\"#main-content\" class=\"skip-content-link\">Skip to content</a>\n  <div class=\"crayons-header__container\">\n    <span class=\"inline-block m:hidden \">\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger mx-2\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\" class=\"crayons-icon\"><title id=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\">Navigation menu</title>\n    <path d=\"M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z\"></path>\n</svg>\n\n      </button>\n    </span>\n    <a href=\"/\" class=\"site-logo\" aria-label=\"DEV Community Home\">\n    <img class=\"site-logo__img\" src=\"https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png\" style=\"aspect-ratio: 10 / 8\" alt=\"DEV Community\">\n</a>\n\n\n    <div class=\"crayons-header--search js-search-form\" id=\"header-search\">\n      <form accept-charset=\"UTF-8\" method=\"get\" action=\"/search\" role=\"search\">\n        <div class=\"crayons-fields crayons-fields--horizontal\">\n          <div class=\"crayons-field flex-1 relative\">\n            <input id=\"search-input\" class=\"crayons-header--search-input crayons-textfield js-search-input\" type=\"text\" name=\"q\" placeholder=\"Find related posts...\" autocomplete=\"off\">\n            <button type=\"submit\" aria-label=\"Search\" class=\"c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\">Search</title>\n    <path d=\"M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z\"></path>\n</svg>\n\n            </button>\n\n            <a class=\"crayons-header--search-brand-indicator\" href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral\" target=\"_blank\" rel=\"noopener noreferrer\">\n                Powered by Algolia\n                <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"Layer_1\" width=\"24\" height=\"24\" viewBox=\"0 0 500 500.34\" role=\"img\" aria-labelledby=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\">Search</title>\n  <defs></defs><path class=\"cls-1\" d=\"M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z\"></path>\n</svg>\n\n            </a>\n          </div>\n        </div>\n      </form>\n    </div>\n\n    <div class=\"flex items-center h-100 ml-auto\">\n        <div class=\"flex\" id=\"authentication-top-nav-actions\">\n          <span class=\"hidden m:block\">\n            <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"c-link c-link--block mr-2 whitespace-nowrap ml-auto\" data-no-instant=\"\">\n              Log in\n            </a>\n          </span>\n\n          <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" data-tracking-id=\"ca_top_nav\" data-tracking-source=\"top_navbar\" class=\"c-cta c-cta--branded whitespace-nowrap mr-2\" data-no-instant=\"\">\n            Create account\n          </a>\n        </div>\n    </div>\n  </div>\n</header>\n\n<div class=\"hamburger\">\n  <div class=\"hamburger__content\">\n    <header class=\"hamburger__content__header\">\n      <h2 class=\"fs-l fw-bold flex-1 break-word lh-tight\">DEV Community</h2>\n\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger shrink-0\" aria-label=\"Close\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7jqca81wlh4sunhyocm20yteah4aqdu\" aria-hidden=\"true\" class=\"crayons-icon c-btn__icon\"><title id=\"a7jqca81wlh4sunhyocm20yteah4aqdu\">Close</title><path d=\"M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z\"></path></svg>\n\n      </button>\n    </header>\n\n    <div class=\"p-2 js-navigation-links-container\" id=\"authentication-hamburger-actions\">\n    </div>\n  </div>\n  <div class=\"hamburger__overlay js-hamburger-trigger\"></div>\n</div>\n\n\n        <div id=\"active-broadcast\" class=\"broadcast-wrapper\"></div>\n<div id=\"page-content\" class=\"wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760\" data-current-page=\"comments-index\">\n  <div id=\"page-content-inner\" data-internal-nav=\"false\">\n    <div id=\"page-route-change\" class=\"screen-reader-only\" aria-live=\"polite\" aria-atomic=\"true\"></div>\n\n    <script src=\"https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js\" defer=\"defer\"></script>\n\n  \n<script src=\"https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js\" defer=\"defer\"></script>\n\n<div class=\"crayons-layout crayons-layout--limited-l gap-0\" data-follow-button-container=\"true\">\n    <span id=\"comment-article-indicator\" data-article-id=\"172117\"></span>\n\n    <div id=\"response-templates-data\" class=\"hidden\"></div>\n    <script src=\"https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js\" defer=\"defer\"></script>\n    <header class=\"p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0\">\n        <h1 class=\"crayons-subtitle-1 mb-4\">\n          <span class=\"fw-normal color-base-60\">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>\n        </h1>\n        <div class=\"flex\">\n          <a class=\"crayons-btn crayons-btn--outlined mr-2\" href=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5\">View post</a>\n        </div>\n    </header>\n\n\n  <section class=\"crayons-card text-padding min-w-0 z-elevate\" id=\"comments-container\" data-commentable-id=\"172117\" data-commentable-type=\"Article\" data-commentable-author-id=\"102760\" data-commentable-co-author-ids=\"\">\n\n\n    <div class=\"comments\" id=\"comment-trees-container\">\n              <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-0\n                    root\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"m:mx-1 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\" class=\"crayons-icon expanded\"><title id=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\" class=\"crayons-icon collapsed\"><title id=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273144\" class=\"\n      comment single-comment-node\n      \n      root\n      comment--deep-0\n      \n    \" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fe1e\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273144\" aria-controls=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:02:26Z\" class=\"date-short-year\" title=\"Tuesday, September 17, 2019 at 6:02:26 PM\">Sep 17 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273144\" aria-controls=\"comment-dropdown-273144\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\" class=\"crayons-icon pointer-events-none\"><title id=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273144\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273144\" data-comment-url=\"https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273144\" data-comment-id=\"273144\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 9;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3btu01xca2urgip0ej7lt2tshj6bs28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3btu01xca2urgip0ej7lt2tshj6bs28\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a207ojso91c7liu3pwqmlfkjddpc2zco\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a207ojso91c7liu3pwqmlfkjddpc2zco\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-273144\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273144\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amu86j05tb5rto5dwbol17xfyeew32qd\" class=\"crayons-icon expanded\"><title id=\"amu86j05tb5rto5dwbol17xfyeew32qd\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"agcra525od8yaymvu4prqj30npmizg4n\" class=\"crayons-icon collapsed\"><title id=\"agcra525od8yaymvu4prqj30npmizg4n\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273163\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-comment-author-id=\"102760\" data-content-user-id=\"102760\">\n    <a name=\"comment-fe27\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/jamestimmins\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" alt=\"jamestimmins profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/jamestimmins\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      James Timmins\n    </span>\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -mr-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273163\" aria-controls=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"James Timmins profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      James Timmins\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/jamestimmins\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      James Timmins\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: James Timmins\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-09-19T16:58:25Z\" class=\"date\">Sep 19, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -ml-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:29:14Z\" class=\"date-short-year\" title=\"Tuesday, September 17, 2019 at 6:29:14 PM\">Sep 17 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273163\" aria-controls=\"comment-dropdown-273163\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\" class=\"crayons-icon pointer-events-none\"><title id=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273163\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to James Timmins's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"102760\" data-action=\"settings-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/settings\" aria-label=\"Go to James Timmins's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"102760\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273163\" data-comment-url=\"https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Hide James Timmins's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/mod\" aria-label=\"Moderate James Timmins's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Report James Timmins's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>\n\n<ol>\n<li>Explicitly check for a string value. DEBUG = (os.getenv(\"DEBUG\") == 'true')</li>\n<li>Cast the val to a boolean DEBUG = bool(os.getenv(\"DEBUG\")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>\n<li>Use a more fully-featured package like <a href=\"https://github.com/joke2k/django-environ\" rel=\"nofollow\">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>\n</ol>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273163\" data-comment-id=\"273163\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 8;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"acgeuroqpao89v1gqag5tnag1lzjbopd\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"acgeuroqpao89v1gqag5tnag1lzjbopd\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"alpwyiy7hd86mwy98dvfifgf6axh83az\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"alpwyiy7hd86mwy98dvfifgf6axh83az\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-273163\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273163\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\" class=\"crayons-icon expanded\"><title id=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\" class=\"crayons-icon collapsed\"><title id=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-359014\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-comment-author-id=\"119873\" data-content-user-id=\"119873\">\n    <a name=\"comment-kb26\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/bhupesh\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" alt=\"bhupesh profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/bhupesh\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Bhupesh Varshney \ud83d\udc7e\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-359014\" aria-controls=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Bhupesh Varshney \ud83d\udc7e profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </button>\n    <div id=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #0000bc; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/bhupesh\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney \ud83d\udc7e&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Bhupesh Varshney \ud83d\udc7e\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Email\n          </div>\n          <div class=\"value\">\n            <a href=\"mailto:\"></a>\n          </div>\n        </li>\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India \ud83c\uddee\ud83c\uddf3\n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-12-05T15:02:51Z\" class=\"date\">Dec 5, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2020-01-16T08:59:45Z\" class=\"date-short-year\" title=\"Thursday, January 16, 2020 at 8:59:45 AM\">Jan 16 '20</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-359014\" aria-controls=\"comment-dropdown-359014\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\" class=\"crayons-icon pointer-events-none\"><title id=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-359014\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Bhupesh Varshney \ud83d\udc7e's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"119873\" data-action=\"settings-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/settings\" aria-label=\"Go to Bhupesh Varshney \ud83d\udc7e's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"119873\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"359014\" data-comment-url=\"https://dev.to/bhupesh/comment/kb26\" aria-label=\"Hide Bhupesh Varshney \ud83d\udc7e's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/mod\" aria-label=\"Moderate Bhupesh Varshney \ud83d\udc7e's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" aria-label=\"Report Bhupesh Varshney \ud83d\udc7e's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>thanks for this</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-359014\" data-comment-id=\"359014\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 7;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-359014\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-359014\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7qkh3osze31p5tx1sa37ss9h410885k\" class=\"crayons-icon expanded\"><title id=\"a7qkh3osze31p5tx1sa37ss9h410885k\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ap76c9hto972y44k19vq49h1o4ipe73a\" class=\"crayons-icon collapsed\"><title id=\"ap76c9hto972y44k19vq49h1o4ipe73a\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1107596\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-comment-author-id=\"1215611\" data-content-user-id=\"1215611\">\n    <a name=\"comment-2b0bm\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/eftehassanpp\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" alt=\"eftehassanpp profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/eftehassanpp\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      eftehassanpp\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1107596\" aria-controls=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"eftehassanpp profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      eftehassanpp\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/eftehassanpp\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      eftehassanpp\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: eftehassanpp\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Full stack Web Developer\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2023-11-21T21:33:36Z\" class=\"date\">Nov 21, 2023</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2023-11-21T21:37:14Z\" class=\"date-short-year\" title=\"Tuesday, November 21, 2023 at 9:37:14 PM\">Nov 21 '23</time>\n\n    <span class=\"hidden m:inline-block\">\u2022 Edited on <time datetime=\"2023-11-21T21:37:49Z\" class=\"date-no-year\" title=\"Tuesday, November 21, 2023 at 9:37:49 PM\">Nov 21</time></span>\n    <span class=\"m:hidden\">\u2022 Edited</span>\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1107596\" aria-controls=\"comment-dropdown-1107596\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"anqysk9wz3k463ox4nph62xear0d3p4w\" class=\"crayons-icon pointer-events-none\"><title id=\"anqysk9wz3k463ox4nph62xear0d3p4w\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1107596\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to eftehassanpp's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1215611\" data-action=\"settings-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/settings\" aria-label=\"Go to eftehassanpp's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1215611\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1107596\" data-comment-url=\"https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Hide eftehassanpp's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/mod\" aria-label=\"Moderate eftehassanpp's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Report eftehassanpp's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>\n<strong>import json</strong><br>\n<strong>DEBUG = json.loads(os.getenv(\"DEBUG\"))<br>\nif DEBUG:<br>\n    print(\"Debugging\")</strong></p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1107596\" data-comment-id=\"1107596\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 6;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abwchupp63so33156spria10r4l8m637\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"abwchupp63so33156spria10r4l8m637\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count hidden\">0</span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1107596\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\" class=\"crayons-icon expanded\"><title id=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2qx85oskkj1aic7osf7czppfjrosxg3\" class=\"crayons-icon collapsed\"><title id=\"a2qx85oskkj1aic7osf7czppfjrosxg3\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274947\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-comment-author-id=\"230500\" data-content-user-id=\"230500\">\n    <a name=\"comment-fgin\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/anshsaini\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" alt=\"anshsaini profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/anshsaini\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Ansh Saini\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274947\" aria-controls=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Ansh Saini profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Ansh Saini\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #aaa1e0; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/anshsaini\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Ansh Saini\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Ansh Saini\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Here to share my knowledge and learn new things, then share those as well.\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India\n          </div>\n        </li>\n          <li>\n            <div class=\"key\">\n              Education\n            </div>\n            <div class=\"value\">\n              Bachelor's Degree in Computer Science\n            </div>\n          </li>\n          <li>\n            <div class=\"key\">\n              Work\n            </div>\n            <div class=\"value\">\n              Software Development Manager at Suraasa\n            </div>\n          </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-09-16T11:14:42Z\" class=\"date\">Sep 16, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T18:08:31Z\" class=\"date-short-year\" title=\"Thursday, September 19, 2019 at 6:08:31 PM\">Sep 19 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274947\" aria-controls=\"comment-dropdown-274947\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\" class=\"crayons-icon pointer-events-none\"><title id=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274947\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Ansh Saini's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"230500\" data-action=\"settings-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/settings\" aria-label=\"Go to Ansh Saini's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"230500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274947\" data-comment-url=\"https://dev.to/anshsaini/comment/fgin\" aria-label=\"Hide Ansh Saini's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/mod\" aria-label=\"Moderate Ansh Saini's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" aria-label=\"Report Ansh Saini's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274947\" data-comment-id=\"274947\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 5;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ajn1movjhp9pjktahx5eie34nb5xkz92\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ajn1movjhp9pjktahx5eie34nb5xkz92\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-274947\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274947\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\" class=\"crayons-icon expanded\"><title id=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\" class=\"crayons-icon collapsed\"><title id=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274987\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fgkb\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274987\" aria-controls=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T19:03:55Z\" class=\"date-short-year\" title=\"Thursday, September 19, 2019 at 7:03:55 PM\">Sep 19 '19</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274987\" aria-controls=\"comment-dropdown-274987\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\" class=\"crayons-icon pointer-events-none\"><title id=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274987\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274987\" data-comment-url=\"https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Sure! After time spent to True this, False that... and your app lives of it\u2019s own life </p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274987\" data-comment-id=\"274987\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 4;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-274987\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274987\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab4azljunvkclho839543mrgdhe8uanf\" class=\"crayons-icon expanded\"><title id=\"ab4azljunvkclho839543mrgdhe8uanf\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\" class=\"crayons-icon collapsed\"><title id=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-712982\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-comment-author-id=\"201500\" data-content-user-id=\"201500\">\n    <a name=\"comment-1eeia\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/guettli\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" alt=\"guettli profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/guettli\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Thomas G\u00fcttler\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-712982\" aria-controls=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Thomas G\u00fcttler profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      Thomas G\u00fcttler\n      \n    </button>\n    <div id=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/guettli\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Thomas G\u00fcttler\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas G\u00fcttler&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Thomas G\u00fcttler\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-07-25T13:33:46Z\" class=\"date\">Jul 25, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2021-05-13T19:37:19Z\" class=\"date-short-year\" title=\"Thursday, May 13, 2021 at 7:37:19 PM\">May 13 '21</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-712982\" aria-controls=\"comment-dropdown-712982\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\" class=\"crayons-icon pointer-events-none\"><title id=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-712982\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Thomas G\u00fcttler's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"201500\" data-action=\"settings-button\" data-path=\"https://dev.to/guettli/comment/1eeia/settings\" aria-label=\"Go to Thomas G\u00fcttler's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"201500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"712982\" data-comment-url=\"https://dev.to/guettli/comment/1eeia\" aria-label=\"Hide Thomas G\u00fcttler's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/guettli/comment/1eeia/mod\" aria-label=\"Moderate Thomas G\u00fcttler's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" aria-label=\"Report Thomas G\u00fcttler's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Don't ask my why the author did not accept my PR: <a href=\"https://github.com/theskumar/python-dotenv/pull/293/files\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">github.com/theskumar/python-dotenv...</a></p>\n\n<h3>\n  <a name=\"converting-types\" href=\"#converting-types\">\n  </a>\n  Converting types\n</h3>\n\n<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>\n\n<p>Example:<br>\n</p>\n\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"kn\">from</span> <span class=\"n\">distutils.util</span> <span class=\"kn\">import</span> <span class=\"n\">strtobool</span>\n<span class=\"n\">DEBUG</span> <span class=\"o\">=</span> <span class=\"nf\">bool</span><span class=\"p\">(</span><span class=\"nf\">strtobool</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"p\">.</span><span class=\"nf\">getenv</span><span class=\"p\">(</span><span class=\"sh\">'</span><span class=\"s\">DEBUG</span><span class=\"sh\">'</span><span class=\"p\">,</span> <span class=\"sh\">'</span><span class=\"s\">True</span><span class=\"sh\">'</span><span class=\"p\">)))</span>\n</code></pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>Enter fullscreen mode</title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"></path>\n</svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>Exit fullscreen mode</title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"></path>\n</svg>\n\n</div>\n</div>\n</div>\n\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-712982\" data-comment-id=\"712982\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 3;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amicadhcf0ecg45qix2h8bneakx329li\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"amicadhcf0ecg45qix2h8bneakx329li\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-712982\">4</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-712982\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aix6zq952ei8477ykobai8errhmtgk28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aix6zq952ei8477ykobai8errhmtgk28\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\" class=\"crayons-icon expanded\"><title id=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aqqgamrqupo07w83avfsaypdfc38f2h8\" class=\"crayons-icon collapsed\"><title id=\"aqqgamrqupo07w83avfsaypdfc38f2h8\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1322245\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-comment-author-id=\"2562290\" data-content-user-id=\"2562290\">\n    <a name=\"comment-2n5pf\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" alt=\"derrick_k_429f36beeddff99 profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      derrick k\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1322245\" aria-controls=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"derrick k profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      derrick k\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/derrick_k_429f36beeddff99\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      derrick k\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: derrick k\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-12-12T14:19:12Z\" class=\"date\">Dec 12, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2025-04-19T04:12:37Z\" class=\"date-short-year\" title=\"Saturday, April 19, 2025 at 4:12:37 AM\">Apr 19 '25</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1322245\" aria-controls=\"comment-dropdown-1322245\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\" class=\"crayons-icon pointer-events-none\"><title id=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1322245\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to derrick k's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"2562290\" data-action=\"settings-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings\" aria-label=\"Go to derrick k's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"2562290\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1322245\" data-comment-url=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Hide derrick k's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod\" aria-label=\"Moderate derrick k's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Report derrick k's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>I agree, it works perfectly</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1322245\" data-comment-id=\"1322245\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 2;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\" id=\"reactions-count-1322245\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1322245\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\" class=\"crayons-icon expanded\"><title id=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atcipprtb6yh2byyphfnhsbchu8x18k0\" class=\"crayons-icon collapsed\"><title id=\"atcipprtb6yh2byyphfnhsbchu8x18k0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1228782\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-comment-author-id=\"1625827\" data-content-user-id=\"1625827\">\n    <a name=\"comment-2hnim\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/niceguydave\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" alt=\"niceguydave profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/niceguydave\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      David Talbot\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1228782\" aria-controls=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"David Talbot profile details\" aria-expanded=\"false\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      David Talbot\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/niceguydave\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      David Talbot\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: David Talbot\" aria-pressed=\"false\" data-fetched=\"fetched\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-06-14T12:03:32Z\" class=\"date\">Jun 14, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2024-09-04T09:09:28Z\" class=\"date-short-year\" title=\"Wednesday, September 4, 2024 at 9:09:28 AM\">Sep 4 '24</time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1228782\" aria-controls=\"comment-dropdown-1228782\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\" data-dropdown-initialized=\"true\" data-initialized=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aclks2g2l2bow740sya6k4kff7mjsiuv\" class=\"crayons-icon pointer-events-none\"><title id=\"aclks2g2l2bow740sya6k4kff7mjsiuv\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1228782\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to David Talbot's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1625827\" data-action=\"settings-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/settings\" aria-label=\"Go to David Talbot's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1625827\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1228782\" data-comment-url=\"https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Hide David Talbot's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/mod\" aria-label=\"Moderate David Talbot's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Report David Talbot's comment as abusive or violating our code of conduct and/or terms and conditions\"><a href=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" class=\"crayons-link crayons-link--block\">Report abuse</a></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>This is really helpful, thanks. Agreed\u2014it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1228782\" data-comment-id=\"1228782\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\" aria-pressed=\"false\" style=\"z-index: 1;\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"apba72bjxcxsgi9yze6l7sl4vednujll\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"apba72bjxcxsgi9yze6l7sl4vednujll\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count hidden\">0</span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1228782\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a310ex3qenwsd4ez2fili98qg92olabo\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a310ex3qenwsd4ez2fili98qg92olabo\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n    </div>\n\n  </section>\n\n  <div class=\"py-6\">\n    <nav class=\"fs-s align-center block\" aria-label=\"Conduct controls\">\n  <a href=\"/code-of-conduct\" class=\"crayons-link crayons-link--secondary\">Code of Conduct</a>\n  <span class=\"opacity-25 px-2\" role=\"presentation\">\u2022</span>\n  <a href=\"/report-abuse\" class=\"crayons-link crayons-link--secondary\">Report abuse</a>\n</nav>\n\n  </div>\n</div>\n\n<div class=\"fullscreen-code js-fullscreen-code\"></div>\n\n<script>\n    // Listen for resize events and match them to the iframe\n  window.addEventListener('message', function(event) {\n    if (event.origin.startsWith('https://platform.twitter.com')) {\n        var iframes = document.getElementsByTagName('iframe');\n        for (var i = 0; i < iframes.length; i++) {\n          if (event.source === iframes[i].contentWindow) { // iframes which match the event\n            var iframe = iframes[i];\n            var data = event.data['twttr.embed'];\n            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {\n              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.width = data['params']['0']['width'] + 'px !important';\n            }\n            break;\n          }\n        }\n    }\n}, false);\n\n// Legacy support: We have shifted up how we render tweets, but still need to render\n// the old way for old embed. This could eventually be removed.\nvar videoPreviews = document.getElementsByClassName(\"ltag__twitter-tweet__media__video-wrapper\");\n[].forEach.call(videoPreviews, function(el) {\n  el.onclick = function(e) {\n    var divHeight = el.offsetHeight;\n    el.style.maxHeight = divHeight + \"px\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__media--video-preview\")[0].style.display = \"none\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__video\")[0].style.display = \"block\";\n    el.getElementsByTagName(\"video\")[0].play();\n  }\n});\nvar tweets = document.getElementsByClassName(\"ltag__twitter-tweet__main\");\n[].forEach.call(tweets, function(tweet){\n  tweet.onclick = function(e) {\n    if (e.target.nodeName == \"A\" || e.target.parentElement.nodeName == \"A\") {\n      return;\n    }\n    window.open(tweet.dataset.url,\"_blank\");\n  }\n});\n\n  \n  var waitingOnPodcast = setInterval(function() {\n  if (typeof initializePodcastPlayback !== 'undefined') {\n    initializePodcastPlayback();\n    clearInterval(waitingOnPodcast);\n  }\n}, 1);\n\n  \n  function activateRunkitTags() {\n  if (!areAnyRunkitTagsPresent())\n    return\n\n  var checkRunkit = setInterval(function() {\n    try {\n      dynamicallyLoadRunkitLibrary()\n\n      if (typeof(RunKit) === 'undefined') {\n        return\n      }\n\n      replaceTagContentsWithRunkitWidget()\n      clearInterval(checkRunkit);\n    } catch(e) {\n      console.error(e);\n      clearInterval(checkRunkit);\n    }\n  }, 200);\n}\n\nfunction isRunkitTagAlreadyActive(runkitTag) {\n  return runkitTag.querySelector(\"iframe\") !== null;\n};\n\nfunction areAnyRunkitTagsPresent() {\n  var presentRunkitTags = document.getElementsByClassName(\"runkit-element\");\n\n  return presentRunkitTags.length > 0\n}\n\nfunction replaceTagContentsWithRunkitWidget() {\n  var targets = document.getElementsByClassName(\"runkit-element\");\n  for (var i = 0; i < targets.length; i++) {\n    if (isRunkitTagAlreadyActive(targets[i])) {\n      continue;\n    }\n\n    var wrapperContent = targets[i].textContent;\n    if (/^(<iframe src)/.test(wrapperContent) === false) {\n      if (targets[i].children.length > 0) {\n        var preamble = targets[i].children[0].textContent;\n        var content = targets[i].children[1].textContent;\n        targets[i].innerHTML = \"\";\n        var notebook = RunKit.createNotebook({\n          element: targets[i],\n          source: content,\n          preamble: preamble\n        });\n      }\n    }\n  }\n};\n\nfunction dynamicallyLoadRunkitLibrary() {\n  if (typeof(dynamicallyLoadScript) === \"undefined\")\n    return\n\n  dynamicallyLoadScript(\"//embed.runkit.com\")\n}\n\nactivateRunkitTags();\n\n</script>\n<script async=\"\" src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>\n\n\n<div id=\"hide-comments-modal\" class=\"hidden\">\n  <form id=\"hide-comments-modal__form\" class=\"hide-comments-modal__form\" data-type=\"json\" action=\"/comments/hide\" accept-charset=\"UTF-8\" data-remote=\"true\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"\u2713\" autocomplete=\"off\"><input type=\"hidden\" name=\"_method\" value=\"patch\" autocomplete=\"off\"><input type=\"hidden\" name=\"authenticity_token\" value=\"hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ\" autocomplete=\"off\">\n    <div class=\"hide-comments-modal__content\">\n      <p class=\"pb-2\">\n        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id=\"hide-comments-modal__comment-permalink\" href=\"#\">permalink</a>.\n      </p>\n      <label class=\"crayons-field crayons-field--checkbox my-2\">\n        <input name=\"hide_children\" type=\"hidden\" value=\"0\" autocomplete=\"off\"><input class=\"hide_children crayons-checkbox\" type=\"checkbox\" value=\"1\" name=\"hide_children\" id=\"hide_children\">\n        <p class=\"crayons-field__label\">Hide child comments as well</p>\n      </label>\n      <p class=\"pb-4 pt-2\">\n        <button type=\"submit\" class=\"crayons-btn\">\n          Confirm\n        </button>\n      </p>\n    </div>\n</form>  <p class=\"fs-s color-base-60\">For further actions, you may consider blocking this person and/or <a id=\"hide-comments-modal__report-link\" href=\"/report-abuse\">reporting abuse</a></p>\n</div>\n\n\n    <div id=\"runtime-banner-container\"></div>\n    <div id=\"i18n-translations\" data-translations=\"{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Following&quot;,&quot;like&quot;:&quot;Like&quot;,&quot;loading&quot;:&quot;loading...&quot;,&quot;reaction&quot;:&quot;Reaction&quot;,&quot;report_abuse&quot;:&quot;Report abuse&quot;,&quot;search&quot;:&quot;Search&quot;,&quot;success_settings&quot;:&quot;Successfully updated settings.&quot;,&quot;search_placeholder&quot;:&quot;Search...&quot;,&quot;search_find_related_posts&quot;:&quot;Find related posts...&quot;,&quot;search_powered_by&quot;:&quot;Powered by Algolia&quot;,&quot;search_submit_search&quot;:&quot;Submit search for advanced filtering.&quot;,&quot;search_displaying_recommendations&quot;:&quot;Displaying Algolia Recommendations \u2014 Start typing to search&quot;,&quot;article_form_save_changes&quot;:&quot;Save changes&quot;,&quot;article_form_schedule&quot;:&quot;Schedule&quot;,&quot;article_form_publish&quot;:&quot;Publish&quot;,&quot;article_form_loading_preview&quot;:&quot;Loading preview&quot;,&quot;article_form_preview_loaded&quot;:&quot;Preview loaded&quot;,&quot;comments_preview&quot;:&quot;Preview&quot;,&quot;comments_continue_editing&quot;:&quot;Continue editing&quot;,&quot;survey_enter_response&quot;:&quot;Enter your response here...&quot;,&quot;survey_thank_you_response&quot;:&quot;Thank you for your response.&quot;,&quot;survey_thank_you_completing&quot;:&quot;Thank you for completing the survey!&quot;,&quot;dashboard_analytics_readers&quot;:&quot;Readers&quot;,&quot;dashboard_analytics_comments&quot;:&quot;Comments&quot;,&quot;dashboard_analytics_reactions&quot;:&quot;Reactions&quot;,&quot;stats_by&quot;:&quot;by&quot;,&quot;editor_new_title&quot;:&quot;New post title here...&quot;,&quot;editor_body_placeholder&quot;:&quot;Write your post content here...&quot;,&quot;tags_field_label&quot;:&quot;Add up to 4 tags&quot;,&quot;tags_field_placeholder&quot;:&quot;Add up to 4 tags...&quot;,&quot;counted_organization&quot;:{&quot;one&quot;:&quot;%{count} organization&quot;,&quot;other&quot;:&quot;%{count} organizations&quot;},&quot;counted_user&quot;:{&quot;one&quot;:&quot;%{count} person&quot;,&quot;other&quot;:&quot;%{count} people&quot;},&quot;not_following&quot;:&quot;You're not following anyone&quot;,&quot;following_everyone&quot;:&quot;You're following %{details} (everyone)&quot;,&quot;you_are_following&quot;:&quot;You're following&quot;,&quot;and&quot;:&quot;and&quot;}}}\"></div>\n  </div>\n</div>\n    \n\n<footer id=\"footer\" class=\"crayons-footer print-hidden\">\n  <div id=\"footer-container\" class=\"crayons-footer__container\">\n\n\n        <style>\n  .long-bb-body {\n    max-height: calc(100vh - 200px);\n    overflow: hidden;\n  }\n  .long-bb-bottom {\n    height: 180px;\n    background: linear-gradient(to top, var(--card-bg), transparent);\n    margin-top: -180px;\n    position:relative;\n    z-index: 5;\n  }\n</style>\n\n  <div style=\"\" data-display-unit=\"\" data-id=\"146443\" data-category-click=\"click\" data-category-impression=\"impression\" data-context-type=\"home\" data-special=\"nothing\" data-article-id=\"\" data-type-of=\"in_house\">\n          <div class=\"crayons-card crayons-card--secondary crayons-bb bb-placement js-billboard\" style=\"display: inline-flex; flex-direction: column; align-items: center; margin: 0 auto 2rem auto; width: fit-content; padding: 2rem;\">\n        <p style=\"font-weight: bold; margin: 0 0 1rem 0;\">\n            \ud83d\udc8e DEV Diamond Sponsors\n        </p>\n        <p style=\"font-size: 0.8em; margin: 0 0 2rem 0;\">\n            Thank you to our Diamond Sponsors for supporting the DEV Community\n        </p>\n    \n        <div style=\"display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem;\">\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://aistudio.google.com/?utm_source=partner&amp;utm_medium=partner&amp;utm_campaign=FY25-Global-DEVpartnership-sponsorship-AIS&amp;utm_content=-&amp;utm_term=-&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjlyhbdqehj3akhz166w.png\" alt=\"Google AI - Official AI Model and Platform Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 54px; padding: 10px;\" loading=\"lazy\" width=\"2048\" height=\"472\">\n                </a>\n                <p style=\"text-align: center;\">Google AI is the official AI Model and Platform Partner of DEV</p>\n            </div>\n\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://neon.tech/?ref=devto&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl88cil6afxzmgwrgtt.png\" alt=\"Neon - Official Database Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Neon is the official database partner of DEV</p>\n            </div>\n    \n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv30ephnolfvnlwgwm0yz.png\" alt=\"Algolia - Official Search Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Algolia is the official search partner of DEV</p>\n            </div>\n        </div>\n    </div>\n  </div>\n\n\n    <p class=\"fs-s crayons-footer__description\">\n      <a class=\"c-link c-link--branded fw-medium\" aria-label=\"DEV Community Home\" href=\"/\">DEV Community</a> \u2014 A space to discuss and keep up software development and manage your software career\n    </p>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/\">\n      Home\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/about\">\n      About\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/contact\">\n      Contact\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"https://mlh.io/\">\n      MLH\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/code-of-conduct\">\n      Code of Conduct\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/privacy\">\n      Privacy Policy\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/terms\">\n      Terms of Use\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <div class=\"fs-s\">\n      <p>Built on <a class=\"c-link c-link--branded\" target=\"_blank\" rel=\"noopener\" href=\"https://www.forem.com\">Forem</a> \u2014 the <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/opensource\">open source</a> software that powers <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to\">DEV</a> and other inclusive communities.</p>\n      <p>Made with love and <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/rails\">Ruby on Rails</a>. DEV Community <span title=\"copyright\">\u00a9</span> 2016 - 2026.</p>\n    </div>\n  </div>\n</footer>\n<div id=\"snack-zone\"></div>\n\n    <div id=\"global-signup-modal\" class=\"authentication-modal hidden\">\n  <div class=\"authentication-modal__container\">\n    <figure class=\"authentication-modal__image-container\">\n      <img class=\"authentication-modal__image\" src=\"https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" alt=\"DEV Community\" loading=\"lazy\">\n    </figure>\n    <div class=\"authentication-modal__content\">\n      <p class=\"authentication-modal__description\">\n          We're a place where coders share, stay up-to-date and grow their careers.\n      </p>\n    </div>\n    <div class=\"authentication-modal__actions\">\n      <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"crayons-btn\" aria-label=\"Log in\" data-no-instant=\"\">\n        Log in\n      </a>\n      <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" class=\"crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account\" aria-label=\"Create new account\" data-no-instant=\"\">\n        Create account\n      </a>\n    </div>\n  </div>\n</div>\n\n<script src=\"https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js\" defer=\"defer\"></script>\n\n    <div id=\"cookie-consent\"></div>\n  <div id=\"reaction-category-resources\" class=\"hidden\" aria-hidden=\"true\">\n    <img data-name=\"Like\" data-slug=\"like\" data-position=\"1\" src=\"https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Unicorn\" data-slug=\"unicorn\" data-position=\"2\" src=\"https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Exploding Head\" data-slug=\"exploding_head\" data-position=\"3\" src=\"https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Raised Hands\" data-slug=\"raised_hands\" data-position=\"4\" src=\"https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Fire\" data-slug=\"fire\" data-position=\"5\" src=\"https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg\" width=\"18\" height=\"18\">\n</div>\n\n    <script>\n  var userSignedIn = false;\n  if (document.readyState === 'complete' || document.readyState === 'interactive') {\n    initAuth();\n  } else {\n    document.addEventListener('DOMContentLoaded', initAuth);\n  }\n\n  function initAuth() {\n    var paramToken = new URLSearchParams(window.location.search).get('jwt');\n\n    if (paramToken && !userSignedIn) {\n      authenticateUser(paramToken);\n    } else {\n      var iframe = document.createElement('iframe');\n      iframe.style.display = 'none';\n      iframe.src = 'https://forem.com/auth_pass/iframe';\n  \n      document.body.appendChild(iframe);\n  \n      window.addEventListener('message', function(event) {\n        if (event.origin !== 'https://forem.com' && event.origin !== window.location.origin) {\n          return;\n        }\n  \n        var data = event.data;\n  \n        if (data.authenticated && !userSignedIn) {\n          authenticateUser(data.token);\n        } else if(data.authenticated && window.ReactNativeWebView && window.ReactNativeWebView.postMessage) {\n          window.ReactNativeWebView.postMessage(JSON.stringify({\n            action: 'login',\n            token: data.token,\n          }));\n        }\n      });  \n    }\n\n    function authenticateUser(token) {\n      fetch('/auth_pass/token_login', {\n        method: 'POST',\n        credentials: 'include',\n        headers: {\n          'Content-Type': 'application/json',\n          'X-CSRF-Token': getMetaContent('csrf-token'),\n        },\n        body: JSON.stringify({ token: token }),\n      })\n      .then(function(response) {\n        return response.json();\n      })\n      .then(function(data) {\n        if (data.success) {\n          if (document.head.querySelector('meta[name=\"user-signed-in\"][content=\"false\"]')) {\n            // Reload the page to update the user's state\n            location.reload();\n          }\n        }\n      })\n      .catch(function(error) {\n        console.error('Error during authentication:', error);\n      });\n    }\n\n    function getMetaContent(name) {\n      var element = document.querySelector('meta[name=\"' + name + '\"]');\n      return element ? element.getAttribute('content') : '';\n    }\n  }\n</script>\n\n  \n  \n  \n  \n  \n<iframe src=\"https://forem.com/auth_pass/iframe\" style=\"display: none;\"></iframe><iframe scrolling=\"no\" frameborder=\"0\" allowtransparency=\"true\" src=\"https://platform.twitter.com/widgets/widget_iframe.2f70fb173b9000da126c79afe2098f02.html?origin=https%3A%2F%2Fdev.to\" title=\"Twitter settings iframe\" style=\"display: none;\"></iframe></body></html>",
  "cookies": null,
  "errors": null,
  "final_url": "https://dev.to/nicolaerario/comment/fe1e",
  "headers": {},
  "id": null,
  "scraper_data": null,
  "scraperouter": null,
  "screenshot_url": null,
  "status_code": 200
}

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Response Headers

{
  "accept-ranges": "bytes",
  "access-control-allow-origin": "*",
  "age": "88571",
  "cache-control": "public, no-cache",
  "content-encoding": "gzip",
  "content-length": "20395",
  "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to; script-src 'self' 'unsafe-eval'",
  "content-type": "text/html; charset=utf-8",
  "date": "Sat, 21 Mar 2026 10:45:43 GMT",
  "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
  "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
  "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
  "referrer-policy": "strict-origin-when-cross-origin",
  "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
  "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
  "server": "Heroku",
  "strict-transport-security": "max-age=31557600",
  "vary": "Accept-Encoding, X-Loggedin",
  "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
  "x-accel-expires": "172800",
  "x-cache": "HIT, HIT",
  "x-cache-hits": "26, 1",
  "x-content-type-options": "nosniff",
  "x-download-options": "noopen",
  "x-permitted-cross-domain-policies": "none",
  "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
  "x-runtime": "0.231911",
  "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100136-CHI",
  "x-timer": "S1774089943.495437,VS0,VE2",
  "x-xss-protection": "0"
}

Request Options

{
  "proxy": {
    "type": "datacenter"
  },
  "scraper_options": {
    "network_requests": true
  },
  "screenshot": true,
  "url": "https://dev.to/nicolaerario/comment/fe1e"
}

1 requests captured

Method URL Status Type Time
GET
https://dev.to/nicolaerario/comment/fe1e
200 document 0.12s

Protections

CDN

Fastly

Info

Fastly delivery headers were detected.

Impact. Edge behavior may affect headers, caching, and request handling.

Recommendation. Use this as routing context rather than a direct block signal.

Evidence

  • X-Served-By header present

CDN

Varnish

Info

Varnish caching markers were detected.

Impact. You may be seeing a cache or edge layer instead of direct origin behavior.

Recommendation. Interpret this as edge context and combine it with stronger protection findings if present.

Evidence

  • Via header referenced Varnish

Structured Metadata

Open Graph
[
  {
    "namespace": {
      "og": "http://ogp.me/ns#"
    },
    "properties": [
      [
        "og:type",
        "article"
      ],
      [
        "og:title",
        "Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables"
      ],
      [
        "og:description",
        "How to use environment variables to keep secure keys out of your code."
      ],
      [
        "og:site_name",
        "DEV Community"
      ],
      [
        "og:url",
        "https://dev.to/nicolaerario/comment/fe1e"
      ],
      [
        "og:title",
        "How do you manage Boolean with python-dotenv? I... \u2014 DEV Community"
      ],
      [
        "og:image",
        "https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"
      ]
    ]
  }
]

Scraper Response Data

Response payload
{
  "content": "<!DOCTYPE html><html lang=\"en\"><head>\n    <meta charset=\"utf-8\">\n    <title>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community</title>\n    \n    <meta name=\"description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta name=\"keywords\" content=\"software, coding, development, engineering, inclusive, community\">\n\n    <meta property=\"og:type\" content=\"article\">\n    <meta property=\"og:title\" content=\"Discussion of Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta property=\"og:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n    <meta property=\"og:site_name\" content=\"DEV Community\">\n    <meta name=\"twitter:card\" content=\"summary_large_image\">\n    <meta name=\"twitter:site\" content=\"@thepracticaldev\">\n    <meta name=\"twitter:creator\" content=\"@\">\n    <meta name=\"twitter:title\" content=\"Django Cheat Sheet: Keep Credentials Secure with Environment Variables\">\n    <meta name=\"twitter:description\" content=\"How to use environment variables to keep secure keys out of your code.\">\n\n      <link rel=\"canonical\" href=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:url\" content=\"https://dev.to/nicolaerario/comment/fe1e\">\n      <meta property=\"og:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta name=\"twitter:title\" content=\"How do you manage Boolean with python-dotenv? I... \u2014 DEV Community\">\n      <meta property=\"og:image\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n      <meta name=\"twitter:image:src\" content=\"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg\">\n\n      <meta name=\"last-updated\" content=\"2026-03-20 10:09:32 UTC\">\n      <meta name=\"user-signed-in\" content=\"false\">\n      <meta name=\"head-cached-at\" content=\"1774001372\">\n      <meta name=\"environment\" content=\"production\">\n      <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"main-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"main-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"main-crayons-stylesheet\">\n\n      <script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"40ca66d9035c488f53e6be4060cf64fc15e70dd40222\" type=\"text/javascript\">document.getElementById(\"40ca66d9035c488f53e6be4060cf64fc15e70dd40222\")?.remove();(() => { // Create a function that looks like a native getter\nconst nativeGetter = function get webdriver() {\n    return false;\n};\n\n// Copy over native function properties\nObject.defineProperties(nativeGetter, {\n    name: { value: 'get webdriver', configurable: true },\n    length: { value: 0, configurable: true },\n    toString: {\n        value: function() {\n            return `function get webdriver() { [native code] }`;\n        },\n        configurable: true\n    }\n});\n\n// Make it look native\nObject.setPrototypeOf(nativeGetter, Function.prototype);\n\n// Apply the modified descriptor\nObject.defineProperty(Navigator.prototype, 'webdriver', {\n    get: nativeGetter,\n    set: undefined,\n    enumerable: true,\n    configurable: true\n}); })();</script><script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"324be3a3b68dca1c4e61037dae94f8dbec183dc1b336\" type=\"text/javascript\">document.getElementById(\"324be3a3b68dca1c4e61037dae94f8dbec183dc1b336\")?.remove();(() => { // To escape `HEADCHR_CHROME_OBJ` test in headless mode => https://github.com/antoinevastel/fp-collect/blob/master/src/fpCollect.js#L322\n// Faking window.chrome fully\n\nif (!window.chrome) {\n    // First, save all existing properties\n    const originalKeys = Object.getOwnPropertyNames(window);\n    const tempObj = {};\n\n    // Recreate all properties in original order\n    for (const key of originalKeys) {\n        const descriptor = Object.getOwnPropertyDescriptor(window, key);\n        const value = window[key];\n        // delete window[key];\n        Object.defineProperty(tempObj, key, descriptor);\n    }\n\n    // Use the exact property descriptor found in headful Chrome\n    // fetch it via `Object.getOwnPropertyDescriptor(window, 'chrome')`\n    const mockChrome = {\n        loadTimes: {},\n        csi: {},\n        app: {\n            isInstalled: false\n        },\n        // Add other Chrome-specific properties\n    };\n\n    Object.defineProperty(tempObj, 'chrome', {\n        writable: true,\n        enumerable: true,\n        configurable: false,\n        value: mockChrome\n    });\n    for (const key of Object.getOwnPropertyNames(tempObj)) {\n        try {\n            Object.defineProperty(window, key,\n                Object.getOwnPropertyDescriptor(tempObj, key));\n        } catch (e) {}\n    };\n    // todo: solve this\n    // Using line below bypasses the hasHighChromeIndex test in creepjs ==> https://github.com/abrahamjuliot/creepjs/blob/master/src/headless/index.ts#L121\n    // Chrome object have to be in the end of the window properties\n    // Object.assign(window, tempObj);\n    // But makes window.chrome unreadable on 'https://bot.sannysoft.com/'\n}\n\n// That means we're running headful and don't need to mock anything\nif ('app' in window.chrome) {\n    return; // Nothing to do here\n}\nconst makeError = {\n    ErrorInInvocation: fn => {\n        const err = new TypeError(`Error in invocation of app.${fn}()`);\n        return utils.stripErrorWithAnchor(\n            err,\n            `at ${fn} (eval at <anonymous>`,\n        );\n    },\n};\n// check with: `JSON.stringify(window.chrome['app'])`\nconst STATIC_DATA = JSON.parse(\n    `\n{\n  \"isInstalled\": false,\n  \"InstallState\": {\n    \"DISABLED\": \"disabled\",\n    \"INSTALLED\": \"installed\",\n    \"NOT_INSTALLED\": \"not_installed\"\n  },\n  \"RunningState\": {\n    \"CANNOT_RUN\": \"cannot_run\",\n    \"READY_TO_RUN\": \"ready_to_run\",\n    \"RUNNING\": \"running\"\n  }\n}\n    `.trim(),\n    );\nwindow.chrome.app = {\n    ...STATIC_DATA,\n\n    get isInstalled() {\n        return false;\n    },\n\n    getDetails: function getDetails() {\n        if (arguments.length) {\n            throw makeError.ErrorInInvocation(`getDetails`);\n        }\n        return null;\n    },\n    getIsInstalled: function getDetails() {\n        if (arguments.length) {\n            throw makeError.ErrorInInvocation(`getIsInstalled`);\n        }\n        return false;\n    },\n    runningState: function getDetails() {\n        if (arguments.length) {\n            throw makeError.ErrorInInvocation(`runningState`);\n        }\n        return 'cannot_run';\n    },\n};\n// Check that the Navigation Timing API v1 is available, we need that\nif (!window.performance || !window.performance.timing) {\n    return;\n}\nconst {timing} = window.performance;\nwindow.chrome.csi = function () {\n    return {\n        onloadT: timing.domContentLoadedEventEnd,\n        startE: timing.navigationStart,\n        pageT: Date.now() - timing.navigationStart,\n        tran: 15, // Transition type or something\n    };\n};\nif (!window.PerformancePaintTiming){\n    return;\n}\nconst {performance} = window;\n// Some stuff is not available on about:blank as it requires a navigation to occur,\n// let's harden the code to not fail then:\nconst ntEntryFallback = {\n    nextHopProtocol: 'h2',\n    type: 'other',\n};\n\n// The API exposes some funky info regarding the connection\nconst protocolInfo = {\n    get connectionInfo() {\n        const ntEntry =\n            performance.getEntriesByType('navigation')[0] || ntEntryFallback;\n        return ntEntry.nextHopProtocol;\n    },\n    get npnNegotiatedProtocol() {\n        // NPN is deprecated in favor of ALPN, but this implementation returns the\n        // HTTP/2 or HTTP2+QUIC/39 requests negotiated via ALPN.\n        const ntEntry =\n            performance.getEntriesByType('navigation')[0] || ntEntryFallback;\n        return ['h2', 'hq'].includes(ntEntry.nextHopProtocol)\n            ? ntEntry.nextHopProtocol\n            : 'unknown';\n    },\n    get navigationType() {\n        const ntEntry =\n            performance.getEntriesByType('navigation')[0] || ntEntryFallback;\n        return ntEntry.type;\n    },\n    get wasAlternateProtocolAvailable() {\n        // The Alternate-Protocol header is deprecated in favor of Alt-Svc\n        // (https://www.mnot.net/blog/2016/03/09/alt-svc), so technically this\n        // should always return false.\n        return false;\n    },\n    get wasFetchedViaSpdy() {\n        // SPDY is deprecated in favor of HTTP/2, but this implementation returns\n        // true for HTTP/2 or HTTP2+QUIC/39 as well.\n        const ntEntry =\n            performance.getEntriesByType('navigation')[0] || ntEntryFallback;\n        return ['h2', 'hq'].includes(ntEntry.nextHopProtocol);\n    },\n    get wasNpnNegotiated() {\n        // NPN is deprecated in favor of ALPN, but this implementation returns true\n        // for HTTP/2 or HTTP2+QUIC/39 requests negotiated via ALPN.\n        const ntEntry =\n            performance.getEntriesByType('navigation')[0] || ntEntryFallback;\n        return ['h2', 'hq'].includes(ntEntry.nextHopProtocol);\n    },\n};\n\n// Truncate number to specific number of decimals, most of the `loadTimes` stuff has 3\nfunction toFixed(num, fixed) {\n    var re = new RegExp('^-?\\\\d+(?:.\\\\d{0,' + (fixed || -1) + '})?');\n    return num.toString().match(re)[0];\n}\n\nconst timingInfo = {\n    get firstPaintAfterLoadTime() {\n        // This was never actually implemented and always returns 0.\n        return 0;\n    },\n    get requestTime() {\n        return timing.navigationStart / 1000;\n    },\n    get startLoadTime() {\n        return timing.navigationStart / 1000;\n    },\n    get commitLoadTime() {\n        return timing.responseStart / 1000;\n    },\n    get finishDocumentLoadTime() {\n        return timing.domContentLoadedEventEnd / 1000;\n    },\n    get finishLoadTime() {\n        return timing.loadEventEnd / 1000;\n    },\n    get firstPaintTime() {\n        const fpEntry = performance.getEntriesByType('paint')[0] || {\n            startTime: timing.loadEventEnd / 1000, // Fallback if no navigation occured (`about:blank`)\n        };\n        return toFixed(\n            (fpEntry.startTime + performance.timeOrigin) / 1000,\n            3,\n        );\n    },\n};\n\nwindow.chrome.loadTimes = function () {\n    return {\n        ...protocolInfo,\n        ...timingInfo,\n    };\n}; })();</script><script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"e7cd2927c1785f612d19184535102da3a75a9291bbe2\" type=\"text/javascript\">document.getElementById(\"e7cd2927c1785f612d19184535102da3a75a9291bbe2\")?.remove();(() => { if(navigator.plugins.length == 0){\n    Object.defineProperty(navigator, 'plugins', {\n        get: () => {\n            const PDFViewerPlugin = Object.create(Plugin.prototype, {\n                description: { value: 'Portable Document Format', enumerable: false },\n                filename: { value: 'internal-pdf-viewer', enumerable: false },\n                name: { value: 'PDF Viewer', enumerable: false },\n            });\n            const ChromePDFViewer = Object.create(Plugin.prototype, {\n                description: { value: 'Portable Document Format', enumerable: false },\n                filename: { value: 'internal-pdf-viewer', enumerable: false },\n                name: { value: 'Chrome PDF Viewer', enumerable: false },\n            });\n            const ChromiumPDFViewer = Object.create(Plugin.prototype, {\n                description: { value: 'Portable Document Format', enumerable: false },\n                filename: { value: 'internal-pdf-viewer', enumerable: false },\n                name: { value: 'Chromium PDF Viewer', enumerable: false },\n            });\n            const EdgePDFViewer = Object.create(Plugin.prototype, {\n                description: { value: 'Portable Document Format', enumerable: false },\n                filename: { value: 'internal-pdf-viewer', enumerable: false },\n                name: { value: 'Microsoft Edge PDF Viewer', enumerable: false },\n            });\n            const WebKitPDFPlugin = Object.create(Plugin.prototype, {\n                description: { value: 'Portable Document Format', enumerable: false },\n                filename: { value: 'internal-pdf-viewer', enumerable: false },\n                name: { value: 'WebKit built-in PDF', enumerable: false },\n            });\n\n            return Object.create(PluginArray.prototype, {\n                length: { value: 5 },\n                0: { value: PDFViewerPlugin },\n                1: { value: ChromePDFViewer },\n                2: { value: ChromiumPDFViewer },\n                3: { value: EdgePDFViewer },\n                4: { value: WebKitPDFPlugin },\n            });\n        },\n    });\n} })();</script><script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"5df8ccf43487846a0683346343871f2e54ec4b21cddd\" type=\"text/javascript\">document.getElementById(\"5df8ccf43487846a0683346343871f2e54ec4b21cddd\")?.remove();(() => { // Bypasses `notificationIsDenied` test in creepsjs's 'Like Headless' sections\nconst isSecure = document.location.protocol.startsWith('https')\nif (isSecure){\n    Object.defineProperty(Notification, 'permission', {get: () => 'default'})\n} })();</script><script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"99f0ea3063f5acc22604ec6f9bc255948674eab1ae6d\" type=\"text/javascript\">document.getElementById(\"99f0ea3063f5acc22604ec6f9bc255948674eab1ae6d\")?.remove();(() => { const windowScreenProps = {\n    // Dimensions\n    innerHeight: 0,\n    innerWidth: 0,\n    outerHeight: 754,\n    outerWidth: 1313,\n\n    // Position\n    screenX: 19,\n    pageXOffset: 0,\n    pageYOffset: 0,\n\n    // Display\n    devicePixelRatio: 2\n};\n\ntry {\n    for (const [prop, value] of Object.entries(windowScreenProps)) {\n        if (value > 0) {\n            // The 0 values are introduced by collecting in the hidden iframe.\n            // They are document sizes anyway so no need to test them or inject them.\n            window[prop] = value;\n        }\n    }\n} catch (e) {\n    console.warn(e);\n}; })();</script><script class=\"316baf399efc014c1af900b12c49708d73d99837\" id=\"29f3d8e98641979c75db1e7a8f478f3f7e4834613542\" type=\"text/javascript\">document.getElementById(\"29f3d8e98641979c75db1e7a8f478f3f7e4834613542\")?.remove();(() => { // Remove playwright fingerprint => https://github.com/microsoft/playwright/commit/c9e673c6dca746384338ab6bb0cf63c7e7caa9b2#diff-087773eea292da9db5a3f27de8f1a2940cdb895383ad750c3cd8e01772a35b40R915\ndelete window.__pwInitScripts;\ndelete window.__playwright__binding__; })();</script><script src=\"https://assets.dev.to/assets/base-61fc3cfea872c8a997f95f730505408f918fe47cc9a61962dbd3c09cdbf34565.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/application-1fdb73d693137ffd9abe5f92c1d35da1e6137ad26fc4e5863c4e484209b6aa35.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseInitializers-2f0777a6d67046056f9f42665560ce072de3801292674358ddbad6e135c1891d.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js\" defer=\"defer\"></script>\n<script src=\"https://assets.dev.to/assets/followButtons-a29380c2c88136b97b2b5e63e94614ff7458fc72e07cffa7b6153831c28a40d2.js\" defer=\"defer\"></script>\n\n        <meta name=\"search-script\" content=\"https://assets.dev.to/assets/Search-5278b3c105ad3af5b065dfd39f8a2a789042539f58a7c1cba3f2e44c0ac7a92b.js\">\n      <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, viewport-fit=cover\">\n      <link rel=\"icon\" type=\"image/x-icon\" href=\"https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"152x152\" href=\"https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link rel=\"apple-touch-icon\" sizes=\"167x167\" href=\"https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"192x192\">\n      <link href=\"https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" rel=\"icon\" sizes=\"128x128\">\n      <meta name=\"apple-mobile-web-app-title\" content=\"dev.to\">\n      <meta name=\"application-name\" content=\"dev.to\">\n      <meta name=\"theme-color\" content=\"#ffffff\" media=\"(prefers-color-scheme: light)\">\n      <meta name=\"theme-color\" content=\"#000000\" media=\"(prefers-color-scheme: dark)\">\n      <link rel=\"search\" href=\"https://dev.to/open-search.xml\" type=\"application/opensearchdescription+xml\" title=\"DEV Community\">\n\n      <meta property=\"forem:name\" content=\"DEV Community\">\n      <meta property=\"forem:logo\" content=\"https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\">\n      <meta property=\"forem:domain\" content=\"dev.to\">\n    \n  </head>\n      <body class=\"sans-serif-article-body default-header\" data-user-status=\"logged-out\" data-is-root-subforem=\"false\" data-subforem-id=\"1\" data-side-nav-visible=\"true\" data-community-name=\"DEV Community\" data-subscription-icon=\"https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png\" data-locale=\"en\" data-honeybadger-key=\"hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr\" data-deployed-at=\"2026-03-19T20:49:25Z\" data-latest-commit-id=\"f47ae62cb2f25a529b1137abf7975d0e86324bf1\" data-ga-tracking=\"UA-71991109-1\" data-cookie-banner-user-context=\"logged_out_only\" data-cookie-banner-platform-context=\"off\" data-algolia-id=\"PRSOBFP46H\" data-algolia-search-key=\"9aa7d31610cba78851c9b1f63776a9dd\" data-algolia-display=\"true\" data-dynamic-url-component=\"bmar11\" data-ga4-tracking-id=\"G-TYEM8Y3JN3\">\n        \n        <script>\n          if (navigator.userAgent === 'ForemWebView/1' || window.frameElement) {\n            document.body.classList.add(\"hidden-shell\");\n          }\n            if (new Date() > new Date(\"2026-02-04T09:00:00-05:00\")) {\n              document.body.dataset.sideNavVisible = \"false\";\n            } \n        </script>\n\n        <link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css\" media=\"all\" id=\"secondary-minimal-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css\" media=\"all\" id=\"secondary-views-stylesheet\">\n<link rel=\"stylesheet\" href=\"https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css\" media=\"all\" id=\"secondary-crayons-stylesheet\">\n\n        <div id=\"body-styles\">\n          <style>\n            :root {\n              --accent-brand-lighter-rgb: 80, 99, 301;\n              --accent-brand-rgb: 59, 73, 223;\n              --accent-brand-darker-rgb: 47, 58, 178;\n            }\n          </style>\n        </div>\n        <div id=\"audiocontent\" data-podcast=\"\">\n          \n        </div>\n        <div class=\"navigation-progress\" id=\"navigation-progress\"></div>\n\n<header id=\"topbar\" class=\"crayons-header topbar print-hidden\">\n  <span id=\"route-change-target\" tabindex=\"-1\"></span>\n  <a href=\"#main-content\" class=\"skip-content-link\">Skip to content</a>\n  <div class=\"crayons-header__container\">\n    <span class=\"inline-block m:hidden \">\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger mx-2\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\" class=\"crayons-icon\"><title id=\"a9syj4ev9usghrj2cupgvw6aabjusk1t\">Navigation menu</title>\n    <path d=\"M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z\"></path>\n</svg>\n\n      </button>\n    </span>\n    <a href=\"/\" class=\"site-logo\" aria-label=\"DEV Community Home\">\n    <img class=\"site-logo__img\" src=\"https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png\" style=\"aspect-ratio: 10 / 8\" alt=\"DEV Community\">\n</a>\n\n\n    <div class=\"crayons-header--search js-search-form\" id=\"header-search\">\n      <form accept-charset=\"UTF-8\" method=\"get\" action=\"/search\" role=\"search\">\n        <div class=\"crayons-fields crayons-fields--horizontal\">\n          <div class=\"crayons-field flex-1 relative\">\n            <input id=\"search-input\" class=\"crayons-header--search-input crayons-textfield js-search-input\" type=\"text\" name=\"q\" placeholder=\"Find related posts...\" autocomplete=\"off\">\n            <button type=\"submit\" aria-label=\"Search\" class=\"c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"asynyx1qxw5bjg880ehhj6dhqa8iosdc\">Search</title>\n    <path d=\"M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z\"></path>\n</svg>\n\n            </button>\n\n            <a class=\"crayons-header--search-brand-indicator\" href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral\" target=\"_blank\" rel=\"noopener noreferrer\">\n                Powered by Algolia\n                <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"Layer_1\" width=\"24\" height=\"24\" viewBox=\"0 0 500 500.34\" role=\"img\" aria-labelledby=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\" aria-hidden=\"true\" class=\"crayons-icon\"><title id=\"amiqq4aj0vjjtdk14z4cq9fy0cjejhz5\">Search</title>\n  <defs></defs><path class=\"cls-1\" d=\"M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z\"></path>\n</svg>\n\n            </a>\n          </div>\n        </div>\n      </form>\n    </div>\n\n    <div class=\"flex items-center h-100 ml-auto\">\n        <div class=\"flex\" id=\"authentication-top-nav-actions\">\n          <span class=\"hidden m:block\">\n            <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"c-link c-link--block mr-2 whitespace-nowrap ml-auto\" data-no-instant=\"\">\n              Log in\n            </a>\n          </span>\n\n          <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" data-tracking-id=\"ca_top_nav\" data-tracking-source=\"top_navbar\" class=\"c-cta c-cta--branded whitespace-nowrap mr-2\" data-no-instant=\"\">\n            Create account\n          </a>\n        </div>\n    </div>\n  </div>\n</header>\n\n<div class=\"hamburger\">\n  <div class=\"hamburger__content\">\n    <header class=\"hamburger__content__header\">\n      <h2 class=\"fs-l fw-bold flex-1 break-word lh-tight\">DEV Community</h2>\n\n      <button class=\"c-btn c-btn--icon-alone js-hamburger-trigger shrink-0\" aria-label=\"Close\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7jqca81wlh4sunhyocm20yteah4aqdu\" aria-hidden=\"true\" class=\"crayons-icon c-btn__icon\"><title id=\"a7jqca81wlh4sunhyocm20yteah4aqdu\">Close</title><path d=\"M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z\"></path></svg>\n\n      </button>\n    </header>\n\n    <div class=\"p-2 js-navigation-links-container\" id=\"authentication-hamburger-actions\">\n    </div>\n  </div>\n  <div class=\"hamburger__overlay js-hamburger-trigger\"></div>\n</div>\n\n\n        <div id=\"active-broadcast\" class=\"broadcast-wrapper\"></div>\n<div id=\"page-content\" class=\"wrapper comments comments-index articletag-python articletag-learning articletag-beginners articletag-webdev articleuser-102760\" data-current-page=\"comments-index\">\n  <div id=\"page-content-inner\" data-internal-nav=\"false\">\n    <div id=\"page-route-change\" class=\"screen-reader-only\" aria-live=\"polite\" aria-atomic=\"true\"></div>\n\n    <script src=\"https://assets.dev.to/assets/postCommentsPage-9cadd9d7d759106335e33acfc211c369baacfee925030a4f39878cc99c020166.js\" defer=\"defer\"></script>\n\n  \n<script src=\"https://assets.dev.to/assets/commentDropdowns-7a28d130e5b78d38b30a9495a964003a66bd64fa455fc70b766d69cf06b9ba24.js\" defer=\"defer\"></script>\n\n<div class=\"crayons-layout crayons-layout--limited-l gap-0\" data-follow-button-container=\"true\">\n    <span id=\"comment-article-indicator\" data-article-id=\"172117\"></span>\n\n    <div id=\"response-templates-data\" class=\"hidden\"></div>\n    <script src=\"https://assets.dev.to/assets/commentsDisplay-87ce1e7063aee6b53f3b5aaa8534bfbe1fa8456c5df828c9bdc224569025c5e3.js\" defer=\"defer\"></script>\n    <header class=\"p-2 pb-4 m:p-6 m:pb-6 crayons-card crayons-card--secondary crayons-layout__content s:mx-2 m:mx-4 -mb-1 z-0\">\n        <h1 class=\"crayons-subtitle-1 mb-4\">\n          <span class=\"fw-normal color-base-60\">Discussion on: </span><span>Django Cheat Sheet: Keep Credentials Secure with Environment Variables</span>\n        </h1>\n        <div class=\"flex\">\n          <a class=\"crayons-btn crayons-btn--outlined mr-2\" href=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5\">View post</a>\n        </div>\n    </header>\n\n\n  <section class=\"crayons-card text-padding min-w-0 z-elevate\" id=\"comments-container\" data-commentable-id=\"172117\" data-commentable-type=\"Article\" data-commentable-author-id=\"102760\" data-commentable-co-author-ids=\"\">\n\n\n    <div class=\"comments\" id=\"comment-trees-container\">\n              <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-0\n                    root\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"m:mx-1 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\" class=\"crayons-icon expanded\"><title id=\"am0hfruw7t7kbloxq90gm2u9chkb8rff\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\" class=\"crayons-icon collapsed\"><title id=\"a60pbxfju0t7z027ra8mfcb5i35wrg6s\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273144\" class=\"\n      comment single-comment-node\n      \n      root\n      comment--deep-0\n      \n    \" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fe1e\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar m:crayons-avatar--l mt-4 m:mt-3\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273144\" aria-controls=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273144\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:02:26Z\" class=\"date-short-year\">\n    Sep 17 '19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273144\" aria-controls=\"comment-dropdown-273144\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\" class=\"crayons-icon pointer-events-none\"><title id=\"akgq3k15dqu49j2fytbaaltxd0kpvll8\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273144\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273144\" data-comment-url=\"https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fe1e/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fe1e\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG = True or DEBUG = False in .env file are always evaluated as True</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273144\" data-comment-id=\"273144\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3btu01xca2urgip0ej7lt2tshj6bs28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3btu01xca2urgip0ej7lt2tshj6bs28\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a207ojso91c7liu3pwqmlfkjddpc2zco\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a207ojso91c7liu3pwqmlfkjddpc2zco\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273144\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe1e\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273144\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahwvmev4joq47o1xnqyy2hn24vhmxtb4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amu86j05tb5rto5dwbol17xfyeew32qd\" class=\"crayons-icon expanded\"><title id=\"amu86j05tb5rto5dwbol17xfyeew32qd\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"agcra525od8yaymvu4prqj30npmizg4n\" class=\"crayons-icon collapsed\"><title id=\"agcra525od8yaymvu4prqj30npmizg4n\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-273163\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-comment-author-id=\"102760\" data-content-user-id=\"102760\">\n    <a name=\"comment-fe27\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/jamestimmins\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" alt=\"jamestimmins profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/jamestimmins\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      James Timmins\n    </span>\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -mr-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-273163\" aria-controls=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"James Timmins profile details\">\n      James Timmins\n      \n    </button>\n    <div id=\"comment-profile-preview-content-273163\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/jamestimmins\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F102760%2F1bb93970-52c8-4043-8f54-e0ae91c54bcd.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      James Timmins\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:102760,&quot;name&quot;:&quot;James Timmins&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: James Timmins\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-09-19T16:58:25Z\" class=\"date\">Sep 19, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n      <span class=\"crayons-hover-tooltip inline-block spec-op-author -ml-2\" data-tooltip=\"Author\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" class=\"crayons-icon\">\n    <path d=\"M12 8.25a6 6 0 110 12 6 6 0 010-12zm0 2.625l-.992 2.01-2.218.322 1.605 1.564-.379 2.21L12 15.937l1.984 1.043-.379-2.209 1.605-1.564-2.218-.323L12 10.875zm.75-6.376l3.75.001v2.25l-1.022.854a7.45 7.45 0 00-2.728-.817V4.5zm-1.5 0v2.288a7.451 7.451 0 00-2.727.816L7.5 6.75V4.5h3.75z\"></path>\n</svg>\n\n      </span>\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-17T18:29:14Z\" class=\"date-short-year\">\n    Sep 17 '19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-273163\" aria-controls=\"comment-dropdown-273163\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\" class=\"crayons-icon pointer-events-none\"><title id=\"a7gmp3o0mt8lu9t1omyan1swl0w3k035\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-273163\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to James Timmins's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"102760\" data-action=\"settings-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/settings\" aria-label=\"Go to James Timmins's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"102760\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"273163\" data-comment-url=\"https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Hide James Timmins's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/jamestimmins/comment/fe27/mod\" aria-label=\"Moderate James Timmins's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/jamestimmins/comment/fe27\" aria-label=\"Report James Timmins's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you can do.</p>\n\n<ol>\n<li>Explicitly check for a string value. DEBUG = (os.getenv(\"DEBUG\") == 'true')</li>\n<li>Cast the val to a boolean DEBUG = bool(os.getenv(\"DEBUG\")), and use an empty string to denote a false value <code>DEBUG=''</code>.</li>\n<li>Use a more fully-featured package like <a href=\"https://github.com/joke2k/django-environ\" rel=\"nofollow\">django-environ</a>. There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).</li>\n</ol>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-273163\" data-comment-id=\"273163\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"acgeuroqpao89v1gqag5tnag1lzjbopd\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"acgeuroqpao89v1gqag5tnag1lzjbopd\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"alpwyiy7hd86mwy98dvfifgf6axh83az\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"alpwyiy7hd86mwy98dvfifgf6axh83az\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">7</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"273163\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fe27\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-273163\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a37arejzrbksr1ryfcmai2lxbi18wfv9\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\" class=\"crayons-icon expanded\"><title id=\"ad4sa0cqju63trsnkxpdxa4f4dsoh3yn\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\" class=\"crayons-icon collapsed\"><title id=\"a3npi4krrvgdd27bjdm7498cnrep1iw0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-359014\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-comment-author-id=\"119873\" data-content-user-id=\"119873\">\n    <a name=\"comment-kb26\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/bhupesh\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" alt=\"bhupesh profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/bhupesh\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Bhupesh Varshney \ud83d\udc7e\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-359014\" aria-controls=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Bhupesh Varshney \ud83d\udc7e profile details\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </button>\n    <div id=\"comment-profile-preview-content-359014\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #0000bc; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/bhupesh\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F119873%2F5e10019f-97c6-4a67-9887-38d45b09bcf0.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Bhupesh Varshney \ud83d\udc7e\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:119873,&quot;name&quot;:&quot;Bhupesh Varshney \ud83d\udc7e&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Bhupesh Varshney \ud83d\udc7e\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Email\n          </div>\n          <div class=\"value\">\n            <a href=\"mailto:\"></a>\n          </div>\n        </li>\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India \ud83c\uddee\ud83c\uddf3\n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-12-05T15:02:51Z\" class=\"date\">Dec 5, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2020-01-16T08:59:45Z\" class=\"date-short-year\">\n    Jan 16 '20\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-359014\" aria-controls=\"comment-dropdown-359014\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\" class=\"crayons-icon pointer-events-none\"><title id=\"adnjyxwg4pvhdki3fg0akoitopv6pfg1\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-359014\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-kb26\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Bhupesh Varshney \ud83d\udc7e's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"119873\" data-action=\"settings-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/settings\" aria-label=\"Go to Bhupesh Varshney \ud83d\udc7e's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"119873\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"359014\" data-comment-url=\"https://dev.to/bhupesh/comment/kb26\" aria-label=\"Hide Bhupesh Varshney \ud83d\udc7e's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/bhupesh/comment/kb26/mod\" aria-label=\"Moderate Bhupesh Varshney \ud83d\udc7e's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/bhupesh/comment/kb26\" aria-label=\"Report Bhupesh Varshney \ud83d\udc7e's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>thanks for this</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-359014\" data-comment-id=\"359014\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aaqd7b0m9ebsm08ygyp5ap1r776nxmue\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"ab3h6paxnc5enxpz5190u3riq9y1tkc4\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"359014\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/kb26\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-359014\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aceqw4gqgqb3jxi544mvbyzdyyv9psv4\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7qkh3osze31p5tx1sa37ss9h410885k\" class=\"crayons-icon expanded\"><title id=\"a7qkh3osze31p5tx1sa37ss9h410885k\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ap76c9hto972y44k19vq49h1o4ipe73a\" class=\"crayons-icon collapsed\"><title id=\"ap76c9hto972y44k19vq49h1o4ipe73a\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1107596\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-comment-author-id=\"1215611\" data-content-user-id=\"1215611\">\n    <a name=\"comment-2b0bm\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/eftehassanpp\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" alt=\"eftehassanpp profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/eftehassanpp\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      eftehassanpp\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1107596\" aria-controls=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"eftehassanpp profile details\">\n      eftehassanpp\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1107596\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/eftehassanpp\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1215611%2Fb858d6d6-1f55-4400-b53f-0bf54227e84b.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      eftehassanpp\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1215611,&quot;name&quot;:&quot;eftehassanpp&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: eftehassanpp\" aria-pressed=\"false\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Full stack Web Developer\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2023-11-21T21:33:36Z\" class=\"date\">Nov 21, 2023</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2023-11-21T21:37:14Z\" class=\"date-short-year\">\n    Nov 21 '23\n  </time>\n\n    <span class=\"hidden m:inline-block\">\u2022 Edited on <time datetime=\"2023-11-21T21:37:49Z\" class=\"date-no-year\">Nov 21</time></span>\n    <span class=\"m:hidden\">\u2022 Edited</span>\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1107596\" aria-controls=\"comment-dropdown-1107596\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"anqysk9wz3k463ox4nph62xear0d3p4w\" class=\"crayons-icon pointer-events-none\"><title id=\"anqysk9wz3k463ox4nph62xear0d3p4w\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1107596\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2b0bm\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to eftehassanpp's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1215611\" data-action=\"settings-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/settings\" aria-label=\"Go to eftehassanpp's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1215611\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1107596\" data-comment-url=\"https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Hide eftehassanpp's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/eftehassanpp/comment/2b0bm/mod\" aria-label=\"Moderate eftehassanpp's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/eftehassanpp/comment/2b0bm\" aria-label=\"Report eftehassanpp's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Its simple. env always stores string in not only just python but also in javascript. simply parse the env value with json<br>\n<strong>import json</strong><br>\n<strong>DEBUG = json.loads(os.getenv(\"DEBUG\"))<br>\nif DEBUG:<br>\n    print(\"Debugging\")</strong></p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1107596\" data-comment-id=\"1107596\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ahjjbveswr6gcaqryfz4gyd2zgdwm4ze\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abwchupp63so33156spria10r4l8m637\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"abwchupp63so33156spria10r4l8m637\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\"></span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1107596\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2b0bm\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1107596\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a3k1um56f8mzdqx2wg98m4ysf5jotnf5\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\" class=\"crayons-icon expanded\"><title id=\"a90ink3joapm9ddh1hq32wcrnt0gvn71\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2qx85oskkj1aic7osf7czppfjrosxg3\" class=\"crayons-icon collapsed\"><title id=\"a2qx85oskkj1aic7osf7czppfjrosxg3\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274947\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-comment-author-id=\"230500\" data-content-user-id=\"230500\">\n    <a name=\"comment-fgin\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/anshsaini\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" alt=\"anshsaini profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/anshsaini\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Ansh Saini\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274947\" aria-controls=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Ansh Saini profile details\">\n      Ansh Saini\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274947\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #aaa1e0; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/anshsaini\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F230500%2F84ffe7e4-6e87-4cc4-b4d0-3f97a92fa6b8.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Ansh Saini\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:230500,&quot;name&quot;:&quot;Ansh Saini&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Ansh Saini\" aria-pressed=\"false\">Follow</button>\n</div>\n  <div class=\"color-base-70\">\n    Here to share my knowledge and learn new things, then share those as well.\n  </div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            New Delhi, India\n          </div>\n        </li>\n          <li>\n            <div class=\"key\">\n              Education\n            </div>\n            <div class=\"value\">\n              Bachelor's Degree in Computer Science\n            </div>\n          </li>\n          <li>\n            <div class=\"key\">\n              Work\n            </div>\n            <div class=\"value\">\n              Software Development Manager at Suraasa\n            </div>\n          </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-09-16T11:14:42Z\" class=\"date\">Sep 16, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T18:08:31Z\" class=\"date-short-year\">\n    Sep 19 '19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274947\" aria-controls=\"comment-dropdown-274947\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\" class=\"crayons-icon pointer-events-none\"><title id=\"ajnrdgcw29lhl494uqrcvs642eq8pcfs\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274947\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgin\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Ansh Saini's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"230500\" data-action=\"settings-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/settings\" aria-label=\"Go to Ansh Saini's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"230500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274947\" data-comment-url=\"https://dev.to/anshsaini/comment/fgin\" aria-label=\"Hide Ansh Saini's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/anshsaini/comment/fgin/mod\" aria-label=\"Moderate Ansh Saini's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/anshsaini/comment/fgin\" aria-label=\"Report Ansh Saini's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Okay I'm surprised I didn't know that! Thanks. This'll save me some future headaches.</p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274947\" data-comment-id=\"274947\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"ajn1movjhp9pjktahx5eie34nb5xkz92\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"ajn1movjhp9pjktahx5eie34nb5xkz92\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"afu01rt9305glx5lva9zn1eoy3gmcvv8\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274947\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgin\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274947\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"asi6g1r8jhe0pamnlr7xyglvrmazj0ta\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\" class=\"crayons-icon expanded\"><title id=\"a937zwu2zlm2i1loif46c4ce0g8yvgeb\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\" class=\"crayons-icon collapsed\"><title id=\"atrycgt3bqhom1hcs1p3jm4bkt5ix4ra\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-274987\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-comment-author-id=\"108601\" data-content-user-id=\"108601\">\n    <a name=\"comment-fgkb\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/nicolaerario\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" alt=\"nicolaerario profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/nicolaerario\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Nicola Erario\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-274987\" aria-controls=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Nicola Erario profile details\">\n      Nicola Erario\n      \n    </button>\n    <div id=\"comment-profile-preview-content-274987\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #160533; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/nicolaerario\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F108601%2Fb5e26ac6-29b1-42d0-a94a-948398b76486.png\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Nicola Erario\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:108601,&quot;name&quot;:&quot;Nicola Erario&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Nicola Erario\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n        <li>\n          <div class=\"key\">\n            Location\n          </div>\n          <div class=\"value\">\n            Italy \ud83c\uddee\ud83c\uddf9 \n          </div>\n        </li>\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2018-10-18T15:20:33Z\" class=\"date\">Oct 18, 2018</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2019-09-19T19:03:55Z\" class=\"date-short-year\">\n    Sep 19 '19\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-274987\" aria-controls=\"comment-dropdown-274987\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\" class=\"crayons-icon pointer-events-none\"><title id=\"ascp2zgq843l3hjiwbkueo1hyk2e9y4r\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-274987\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fgkb\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Nicola Erario's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"108601\" data-action=\"settings-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/settings\" aria-label=\"Go to Nicola Erario's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"108601\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"274987\" data-comment-url=\"https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Hide Nicola Erario's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/nicolaerario/comment/fgkb/mod\" aria-label=\"Moderate Nicola Erario's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/nicolaerario/comment/fgkb\" aria-label=\"Report Nicola Erario's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          \n\n<p>Sure! After time spent to True this, False that... and your app lives of it\u2019s own life </p>\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-274987\" data-comment-id=\"274987\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a90c9akrxlwhzqlm6zbh2cl437mm8m4w\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a7u21cjq73ezwmhylwvn3maoxmjb805x\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">2</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"274987\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/fgkb\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-274987\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aqbnn7m38ze35s566cpzbxp8zc67xkyj\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-1\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ab4azljunvkclho839543mrgdhe8uanf\" class=\"crayons-icon expanded\"><title id=\"ab4azljunvkclho839543mrgdhe8uanf\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\" class=\"crayons-icon collapsed\"><title id=\"a18zu1yfzvcynrxsx4j1npp6npq3sdl7\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-712982\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-1\n      \n    \" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-comment-author-id=\"201500\" data-content-user-id=\"201500\">\n    <a name=\"comment-1eeia\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/guettli\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" alt=\"guettli profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/guettli\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      Thomas G\u00fcttler\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-712982\" aria-controls=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"Thomas G\u00fcttler profile details\">\n      Thomas G\u00fcttler\n      \n    </button>\n    <div id=\"comment-profile-preview-content-712982\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #002a9e; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/guettli\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F201500%2F16f2bb59-0255-428d-af03-a7de94e7c5cc.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      Thomas G\u00fcttler\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:201500,&quot;name&quot;:&quot;Thomas G\u00fcttler&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: Thomas G\u00fcttler\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2019-07-25T13:33:46Z\" class=\"date\">Jul 25, 2019</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2021-05-13T19:37:19Z\" class=\"date-short-year\">\n    May 13 '21\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-712982\" aria-controls=\"comment-dropdown-712982\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\" class=\"crayons-icon pointer-events-none\"><title id=\"a7alnuoz5ampzvua5h7ww511cbk31t1c\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-712982\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-1eeia\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to Thomas G\u00fcttler's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"201500\" data-action=\"settings-button\" data-path=\"https://dev.to/guettli/comment/1eeia/settings\" aria-label=\"Go to Thomas G\u00fcttler's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"201500\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"712982\" data-comment-url=\"https://dev.to/guettli/comment/1eeia\" aria-label=\"Hide Thomas G\u00fcttler's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/guettli/comment/1eeia/mod\" aria-label=\"Moderate Thomas G\u00fcttler's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/guettli/comment/1eeia\" aria-label=\"Report Thomas G\u00fcttler's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>Don't ask my why the author did not accept my PR: <a href=\"https://github.com/theskumar/python-dotenv/pull/293/files\" rel=\"nofollow noopener noreferrer\" target=\"_blank\">github.com/theskumar/python-dotenv...</a></p>\n\n<h3>\n  <a name=\"converting-types\" href=\"#converting-types\">\n  </a>\n  Converting types\n</h3>\n\n<p>The library reads and provides strings. If you need for example a boolean, it is up to you to convert the value.</p>\n\n<p>Example:<br>\n</p>\n\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight python\"><code><span class=\"kn\">from</span> <span class=\"n\">distutils.util</span> <span class=\"kn\">import</span> <span class=\"n\">strtobool</span>\n<span class=\"n\">DEBUG</span> <span class=\"o\">=</span> <span class=\"nf\">bool</span><span class=\"p\">(</span><span class=\"nf\">strtobool</span><span class=\"p\">(</span><span class=\"n\">os</span><span class=\"p\">.</span><span class=\"nf\">getenv</span><span class=\"p\">(</span><span class=\"sh\">'</span><span class=\"s\">DEBUG</span><span class=\"sh\">'</span><span class=\"p\">,</span> <span class=\"sh\">'</span><span class=\"s\">True</span><span class=\"sh\">'</span><span class=\"p\">)))</span>\n</code></pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>Enter fullscreen mode</title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"></path>\n</svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>Exit fullscreen mode</title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"></path>\n</svg>\n\n</div>\n</div>\n</div>\n\n\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-712982\" data-comment-id=\"712982\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a1mk97ycs93jegn3xavxhb8xfgsfkw3d\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"amicadhcf0ecg45qix2h8bneakx329li\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"amicadhcf0ecg45qix2h8bneakx329li\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">4</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;likes</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"712982\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/1eeia\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-712982\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"aix6zq952ei8477ykobai8errhmtgk28\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"aix6zq952ei8477ykobai8errhmtgk28\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\" class=\"crayons-icon expanded\"><title id=\"at7u3o4n8y9ewox1cowczmwqf7t9xj8e\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aqqgamrqupo07w83avfsaypdfc38f2h8\" class=\"crayons-icon collapsed\"><title id=\"aqqgamrqupo07w83avfsaypdfc38f2h8\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1322245\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-comment-author-id=\"2562290\" data-content-user-id=\"2562290\">\n    <a name=\"comment-2n5pf\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" alt=\"derrick_k_429f36beeddff99 profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/derrick_k_429f36beeddff99\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      derrick k\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1322245\" aria-controls=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"derrick k profile details\">\n      derrick k\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1322245\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/derrick_k_429f36beeddff99\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2562290%2F867bf17c-a86a-46a3-b41a-f135afb68ef0.jpg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      derrick k\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:2562290,&quot;name&quot;:&quot;derrick k&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: derrick k\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-12-12T14:19:12Z\" class=\"date\">Dec 12, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2025-04-19T04:12:37Z\" class=\"date-short-year\">\n    Apr 19 '25\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1322245\" aria-controls=\"comment-dropdown-1322245\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\" class=\"crayons-icon pointer-events-none\"><title id=\"ah7e12qgpvpgv7lg5h12h1hg8gsc35dy\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1322245\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2n5pf\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to derrick k's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"2562290\" data-action=\"settings-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/settings\" aria-label=\"Go to derrick k's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"2562290\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1322245\" data-comment-url=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Hide derrick k's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf/mod\" aria-label=\"Moderate derrick k's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/derrick_k_429f36beeddff99/comment/2n5pf\" aria-label=\"Report derrick k's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>I agree, it works perfectly</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon-left crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1322245\" data-comment-id=\"1322245\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a6w8iq5f90v5v8mu1tvdl5prq64nfxzn\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"a2jrd7kzxnp7are2sy91mt0g2y1op9e2\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\">1</span><span class=\"reactions-label hidden m:inline-block\">&nbsp;like</span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1322245\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2n5pf\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1322245\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a71tibt5ws2dqqc3quhiva4b5wgoo31c\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n    <details class=\"comment-wrapper js-comment-wrapper comment-wrapper--deep-2\n                    child\n                    \" open=\"\">\n      <summary aria-label=\"Toggle this comment (and replies)\" data-tracking-name=\"expand_comment_toggle\">\n        <span class=\"mx-0 inline-block align-middle\">\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\" class=\"crayons-icon expanded\"><title id=\"abi2ffrim2fmctcrxzumsbpv3ppxw8hx\">Collapse</title>\n    <path d=\"M12 10.677L8 6.935 9 6l3 2.807L15 6l1 .935-4 3.742zm0 4.517L9 18l-1-.935 4-3.742 4 3.742-1 .934-3-2.805z\"></path>\n</svg>\n\n          <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"atcipprtb6yh2byyphfnhsbchu8x18k0\" class=\"crayons-icon collapsed\"><title id=\"atcipprtb6yh2byyphfnhsbchu8x18k0\">Expand</title>\n    <path d=\"M12 18l-4-3.771 1-.943 3 2.829 3-2.829 1 .943L12 18zm0-10.115l-3 2.829-1-.943L12 6l4 3.771-1 .942-3-2.828z\"></path>\n</svg>\n\n        </span>\n        <span class=\"js-collapse-comment-content inline-block align-middle\"></span>\n      </summary>\n  <div id=\"comment-node-1228782\" class=\"\n      comment single-comment-node\n      \n      child\n      comment--deep-2\n      \n    \" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-comment-author-id=\"1625827\" data-content-user-id=\"1625827\">\n    <a name=\"comment-2hnim\" style=\"position: absolute; top: -8px;\">&nbsp;</a>\n    \n<div class=\"comment__inner\">\n    <a href=\"https://dev.to/niceguydave\" class=\"shrink-0 crayons-avatar mt-4\">\n    <img class=\"crayons-avatar__image\" width=\"32\" height=\"32\" src=\"https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" alt=\"niceguydave profile image\" loading=\"lazy\">\n  </a>\n\n\n  <div class=\"inner-comment comment__details\">\n    <div class=\"comment__content crayons-card\">\n        \n\n\n        <div class=\"comment__header\">\n  <a href=\"https://dev.to/niceguydave\" class=\"crayons-link crayons-link--secondary flex items-center fw-medium m:hidden\">\n    <span class=\"js-comment-username\">\n      David Talbot\n    </span>\n  </a>\n  <div class=\"profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:block\">\n    <button id=\"comment-profile-preview-trigger-1228782\" aria-controls=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__trigger p-1 -my-1 -ml-1 crayons-btn crayons-btn--ghost\" aria-label=\"David Talbot profile details\">\n      David Talbot\n      \n    </button>\n    <div id=\"comment-profile-preview-content-1228782\" class=\"profile-preview-card__content p-4 pt-0 branded-7 crayons-dropdown\" style=\"--card-color: #000000; border-top-color: var(--card-color);\" data-testid=\"profile-preview-card\" data-repositioning-dropdown=\"true\">\n    <div class=\"gap-4 grid\">\n        <div class=\"-mt-4\">\n  <a href=\"/niceguydave\" class=\"flex\">\n    <span class=\"crayons-avatar crayons-avatar--xl  mr-2 shrink-0\">\n      <img src=\"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1625827%2F3226611b-f9b2-4e94-aa3d-94f858cd0a9f.jpeg\" class=\"crayons-avatar__image\" alt=\"\" loading=\"lazy\">\n    </span>\n    <span class=\"crayons-link crayons-subtitle-2 mt-5\">\n      David Talbot\n      \n    </span>\n  </a>\n</div>\n\n<div class=\"print-hidden\">\n  <button name=\"button\" type=\"button\" data-info=\"{&quot;className&quot;:&quot;User&quot;,&quot;style&quot;:&quot;&quot;,&quot;id&quot;:1625827,&quot;name&quot;:&quot;David Talbot&quot;}\" class=\"crayons-btn follow-action-button whitespace-nowrap w-100 follow-user\" aria-label=\"Follow user: David Talbot\" aria-pressed=\"false\">Follow</button>\n</div>\n\n  <div class=\"user-metadata-details\">\n    <ul class=\"user-metadata-details-inner\">\n      <li>\n        <div class=\"key\">\n          Joined\n        </div>\n        <div class=\"value\">\n          <time datetime=\"2024-06-14T12:03:32Z\" class=\"date\">Jun 14, 2024</time>\n        </div>\n      </li>\n    </ul>\n  </div>\n\n    </div>\n</div>\n\n\n  </div>\n\n  <span class=\"color-base-30 px-2 m:pl-0\" role=\"presentation\">\u2022</span>\n\n<a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"comment-date crayons-link crayons-link--secondary fs-s\">\n  <time datetime=\"2024-09-04T09:09:28Z\" class=\"date-short-year\">\n    Sep 4 '24\n  </time>\n\n</a>\n\n\n  <div class=\"comment__dropdown\" data-tracking-name=\"comment_dropdown\">\n    <button id=\"comment-dropdown-trigger-1228782\" aria-controls=\"comment-dropdown-1228782\" aria-expanded=\"false\" class=\"dropbtn comment__dropdown-trigger crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon \" aria-label=\"Toggle dropdown menu\" aria-haspopup=\"true\">\n      <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"aclks2g2l2bow740sya6k4kff7mjsiuv\" class=\"crayons-icon pointer-events-none\"><title id=\"aclks2g2l2bow740sya6k4kff7mjsiuv\">Dropdown menu</title>\n    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.25 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm5.25 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm3.75 1.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"></path>\n</svg>\n\n    </button>\n    <div id=\"comment-dropdown-1228782\" class=\"crayons-dropdown right-1 s:right-0 s:left-auto fs-base dropdown\">\n      <ul class=\"m-0\">\n        <li><a href=\"https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-2hnim\" class=\"crayons-link crayons-link--block permalink-copybtn\" aria-label=\"Copy link to David Talbot's comment\" data-no-instant=\"\">Copy link</a></li>\n        <li class=\"comment-actions hidden\" data-user-id=\"1625827\" data-action=\"settings-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/settings\" aria-label=\"Go to David Talbot's comment settings\"></li>\n          <li class=\"comment-actions hidden\" data-action=\"hide-button\" data-commentable-user-id=\"102760\" data-user-id=\"1625827\">\n              <button class=\"flex justify-between crayons-link crayons-link--block w-100 bg-transparent border-0 hide-comment\" data-hide-type=\"hide\" data-comment-id=\"1228782\" data-comment-url=\"https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Hide David Talbot's comment\">\n                Hide\n              </button>\n          </li>\n        <li class=\"mod-actions hidden mod-actions-comment-button\" data-path=\"https://dev.to/niceguydave/comment/2hnim/mod\" aria-label=\"Moderate David Talbot's comment\"></li>\n        <li class=\"report-abuse-link-wrapper\" data-path=\"/report-abuse?url=https://dev.to/niceguydave/comment/2hnim\" aria-label=\"Report David Talbot's comment as abusive or violating our code of conduct and/or terms and conditions\"></li>\n        <li class=\"current-user-actions\"></li>\n      </ul>\n    </div>\n  </div>\n</div>\n\n\n        <div class=\"\n            comment__body\n            text-styles\n            text-styles--secondary\n            body\n            \n            \n          \">\n          <p>This is really helpful, thanks. Agreed\u2014it seems strange that your PR was rejected, given that variables with False values get (confusingly) cast to True.</p>\n\n\n        </div>\n\n    </div>\n\n    <script>\n    </script>\n\n    <footer class=\"comment__footer print-hidden\">\n  <button class=\"crayons-tooltip__activator relative crayons-btn crayons-btn--ghost crayons-btn--icon crayons-btn--s mr-1 reaction-like inline-flex reaction-button\" id=\"button-for-comment-1228782\" data-comment-id=\"1228782\" aria-label=\"like\" data-tracking-name=\"comment_heart_button\">\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"al2238nmtzvbhzqi2yywrpxgjdejg8pi\">Like comment: </title><path d=\"M18.884 12.595l.01.011L12 19.5l-6.894-6.894.01-.01A4.875 4.875 0 0112 5.73a4.875 4.875 0 016.884 6.865zM6.431 7.037a3.375 3.375 0 000 4.773L12 17.38l5.569-5.569a3.375 3.375 0 10-4.773-4.773L9.613 10.22l-1.06-1.062 2.371-2.372a3.375 3.375 0 00-4.492.25v.001z\"></path></svg>\n\n    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" role=\"img\" aria-labelledby=\"apba72bjxcxsgi9yze6l7sl4vednujll\" class=\"crayons-icon crayons-icon reaction-icon--like reaction-icon reacted\"><title id=\"apba72bjxcxsgi9yze6l7sl4vednujll\">Like comment: </title>\n    <path d=\"M5.116 12.595a4.875 4.875 0 015.56-7.68h-.002L7.493 8.098l1.06 1.061 3.181-3.182a4.875 4.875 0 016.895 6.894L12 19.5l-6.894-6.894.01-.01z\"></path>\n</svg>\n\n    <span class=\"reactions-count\"></span><span class=\"reactions-label hidden m:inline-block\"></span>\n    <span data-testid=\"tooltip\" class=\"crayons-tooltip__content\">\n      Like\n    </span>\n  </button>\n\n      <button class=\"actions crayons-btn crayons-btn--ghost crayons-btn--s crayons-btn--icon-left toggle-reply-form mr-1 inline-flex\" data-comment-id=\"1228782\" data-path=\"/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5/comments/2hnim\" data-tracking-name=\"comment_reply_button\" data-testid=\"reply-button-1228782\" rel=\"nofollow\">\n        <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" role=\"img\" aria-labelledby=\"a310ex3qenwsd4ez2fili98qg92olabo\" class=\"crayons-icon reaction-icon not-reacted\"><title id=\"a310ex3qenwsd4ez2fili98qg92olabo\">Comment button</title><path d=\"M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z\"></path></svg>\n\n        <span class=\"hidden m:inline-block\">Reply</span>\n      </button>\n\n</footer>\n\n  </div>\n</div>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n\n  </div>\n    </details>\n\n    </div>\n\n  </section>\n\n  <div class=\"py-6\">\n    <nav class=\"fs-s align-center block\" aria-label=\"Conduct controls\">\n  <a href=\"/code-of-conduct\" class=\"crayons-link crayons-link--secondary\">Code of Conduct</a>\n  <span class=\"opacity-25 px-2\" role=\"presentation\">\u2022</span>\n  <a href=\"/report-abuse\" class=\"crayons-link crayons-link--secondary\">Report abuse</a>\n</nav>\n\n  </div>\n</div>\n\n<div class=\"fullscreen-code js-fullscreen-code\"></div>\n\n<script>\n    // Listen for resize events and match them to the iframe\n  window.addEventListener('message', function(event) {\n    if (event.origin.startsWith('https://platform.twitter.com')) {\n        var iframes = document.getElementsByTagName('iframe');\n        for (var i = 0; i < iframes.length; i++) {\n          if (event.source === iframes[i].contentWindow) { // iframes which match the event\n            var iframe = iframes[i];\n            var data = event.data['twttr.embed'];\n            if (data && data['method'] === 'twttr.private.resize' && data['params'] && data['params']['0']) {\n              iframe.style.height = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.minHeight = data['params']['0']['height'] + 0.5 + 'px';\n              iframe.style.width = data['params']['0']['width'] + 'px !important';\n            }\n            break;\n          }\n        }\n    }\n}, false);\n\n// Legacy support: We have shifted up how we render tweets, but still need to render\n// the old way for old embed. This could eventually be removed.\nvar videoPreviews = document.getElementsByClassName(\"ltag__twitter-tweet__media__video-wrapper\");\n[].forEach.call(videoPreviews, function(el) {\n  el.onclick = function(e) {\n    var divHeight = el.offsetHeight;\n    el.style.maxHeight = divHeight + \"px\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__media--video-preview\")[0].style.display = \"none\";\n    el.getElementsByClassName(\"ltag__twitter-tweet__video\")[0].style.display = \"block\";\n    el.getElementsByTagName(\"video\")[0].play();\n  }\n});\nvar tweets = document.getElementsByClassName(\"ltag__twitter-tweet__main\");\n[].forEach.call(tweets, function(tweet){\n  tweet.onclick = function(e) {\n    if (e.target.nodeName == \"A\" || e.target.parentElement.nodeName == \"A\") {\n      return;\n    }\n    window.open(tweet.dataset.url,\"_blank\");\n  }\n});\n\n  \n  var waitingOnPodcast = setInterval(function() {\n  if (typeof initializePodcastPlayback !== 'undefined') {\n    initializePodcastPlayback();\n    clearInterval(waitingOnPodcast);\n  }\n}, 1);\n\n  \n  function activateRunkitTags() {\n  if (!areAnyRunkitTagsPresent())\n    return\n\n  var checkRunkit = setInterval(function() {\n    try {\n      dynamicallyLoadRunkitLibrary()\n\n      if (typeof(RunKit) === 'undefined') {\n        return\n      }\n\n      replaceTagContentsWithRunkitWidget()\n      clearInterval(checkRunkit);\n    } catch(e) {\n      console.error(e);\n      clearInterval(checkRunkit);\n    }\n  }, 200);\n}\n\nfunction isRunkitTagAlreadyActive(runkitTag) {\n  return runkitTag.querySelector(\"iframe\") !== null;\n};\n\nfunction areAnyRunkitTagsPresent() {\n  var presentRunkitTags = document.getElementsByClassName(\"runkit-element\");\n\n  return presentRunkitTags.length > 0\n}\n\nfunction replaceTagContentsWithRunkitWidget() {\n  var targets = document.getElementsByClassName(\"runkit-element\");\n  for (var i = 0; i < targets.length; i++) {\n    if (isRunkitTagAlreadyActive(targets[i])) {\n      continue;\n    }\n\n    var wrapperContent = targets[i].textContent;\n    if (/^(<iframe src)/.test(wrapperContent) === false) {\n      if (targets[i].children.length > 0) {\n        var preamble = targets[i].children[0].textContent;\n        var content = targets[i].children[1].textContent;\n        targets[i].innerHTML = \"\";\n        var notebook = RunKit.createNotebook({\n          element: targets[i],\n          source: content,\n          preamble: preamble\n        });\n      }\n    }\n  }\n};\n\nfunction dynamicallyLoadRunkitLibrary() {\n  if (typeof(dynamicallyLoadScript) === \"undefined\")\n    return\n\n  dynamicallyLoadScript(\"//embed.runkit.com\")\n}\n\nactivateRunkitTags();\n\n</script>\n<script async=\"\" src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>\n\n\n<div id=\"hide-comments-modal\" class=\"hidden\">\n  <form id=\"hide-comments-modal__form\" class=\"hide-comments-modal__form\" data-type=\"json\" action=\"/comments/hide\" accept-charset=\"UTF-8\" data-remote=\"true\" method=\"post\"><input name=\"utf8\" type=\"hidden\" value=\"\u2713\" autocomplete=\"off\"><input type=\"hidden\" name=\"_method\" value=\"patch\" autocomplete=\"off\"><input type=\"hidden\" name=\"authenticity_token\" value=\"hg25dIFjPzui1OxJ2WScwcv9xygEWCNOSAgv9VDe1biuNmTIBT8nQynwXMKdBCg4Y8imO7iPaLUrGMasSI9ZfQ\" autocomplete=\"off\">\n    <div class=\"hide-comments-modal__content\">\n      <p class=\"pb-2\">\n        Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's <a id=\"hide-comments-modal__comment-permalink\" href=\"#\">permalink</a>.\n      </p>\n      <label class=\"crayons-field crayons-field--checkbox my-2\">\n        <input name=\"hide_children\" type=\"hidden\" value=\"0\" autocomplete=\"off\"><input class=\"hide_children crayons-checkbox\" type=\"checkbox\" value=\"1\" name=\"hide_children\" id=\"hide_children\">\n        <p class=\"crayons-field__label\">Hide child comments as well</p>\n      </label>\n      <p class=\"pb-4 pt-2\">\n        <button type=\"submit\" class=\"crayons-btn\">\n          Confirm\n        </button>\n      </p>\n    </div>\n</form>  <p class=\"fs-s color-base-60\">For further actions, you may consider blocking this person and/or <a id=\"hide-comments-modal__report-link\" href=\"/report-abuse\">reporting abuse</a></p>\n</div>\n\n\n    <div id=\"runtime-banner-container\"></div>\n    <div id=\"i18n-translations\" data-translations=\"{&quot;en&quot;:{&quot;core&quot;:{&quot;add_comment&quot;:&quot;Add comment&quot;,&quot;beta&quot;:&quot;beta&quot;,&quot;comment&quot;:&quot;Comment&quot;,&quot;copy_link&quot;:&quot;Copy link&quot;,&quot;edit_profile&quot;:&quot;Edit profile&quot;,&quot;follow&quot;:&quot;Follow&quot;,&quot;follow_back&quot;:&quot;Follow back&quot;,&quot;following&quot;:&quot;Following&quot;,&quot;like&quot;:&quot;Like&quot;,&quot;loading&quot;:&quot;loading...&quot;,&quot;reaction&quot;:&quot;Reaction&quot;,&quot;report_abuse&quot;:&quot;Report abuse&quot;,&quot;search&quot;:&quot;Search&quot;,&quot;success_settings&quot;:&quot;Successfully updated settings.&quot;,&quot;search_placeholder&quot;:&quot;Search...&quot;,&quot;search_find_related_posts&quot;:&quot;Find related posts...&quot;,&quot;search_powered_by&quot;:&quot;Powered by Algolia&quot;,&quot;search_submit_search&quot;:&quot;Submit search for advanced filtering.&quot;,&quot;search_displaying_recommendations&quot;:&quot;Displaying Algolia Recommendations \u2014 Start typing to search&quot;,&quot;article_form_save_changes&quot;:&quot;Save changes&quot;,&quot;article_form_schedule&quot;:&quot;Schedule&quot;,&quot;article_form_publish&quot;:&quot;Publish&quot;,&quot;article_form_loading_preview&quot;:&quot;Loading preview&quot;,&quot;article_form_preview_loaded&quot;:&quot;Preview loaded&quot;,&quot;comments_preview&quot;:&quot;Preview&quot;,&quot;comments_continue_editing&quot;:&quot;Continue editing&quot;,&quot;survey_enter_response&quot;:&quot;Enter your response here...&quot;,&quot;survey_thank_you_response&quot;:&quot;Thank you for your response.&quot;,&quot;survey_thank_you_completing&quot;:&quot;Thank you for completing the survey!&quot;,&quot;dashboard_analytics_readers&quot;:&quot;Readers&quot;,&quot;dashboard_analytics_comments&quot;:&quot;Comments&quot;,&quot;dashboard_analytics_reactions&quot;:&quot;Reactions&quot;,&quot;stats_by&quot;:&quot;by&quot;,&quot;editor_new_title&quot;:&quot;New post title here...&quot;,&quot;editor_body_placeholder&quot;:&quot;Write your post content here...&quot;,&quot;tags_field_label&quot;:&quot;Add up to 4 tags&quot;,&quot;tags_field_placeholder&quot;:&quot;Add up to 4 tags...&quot;,&quot;counted_organization&quot;:{&quot;one&quot;:&quot;%{count} organization&quot;,&quot;other&quot;:&quot;%{count} organizations&quot;},&quot;counted_user&quot;:{&quot;one&quot;:&quot;%{count} person&quot;,&quot;other&quot;:&quot;%{count} people&quot;},&quot;not_following&quot;:&quot;You're not following anyone&quot;,&quot;following_everyone&quot;:&quot;You're following %{details} (everyone)&quot;,&quot;you_are_following&quot;:&quot;You're following&quot;,&quot;and&quot;:&quot;and&quot;}}}\"></div>\n  </div>\n</div>\n    \n\n<footer id=\"footer\" class=\"crayons-footer print-hidden\">\n  <div id=\"footer-container\" class=\"crayons-footer__container\">\n\n\n        <style>\n  .long-bb-body {\n    max-height: calc(100vh - 200px);\n    overflow: hidden;\n  }\n  .long-bb-bottom {\n    height: 180px;\n    background: linear-gradient(to top, var(--card-bg), transparent);\n    margin-top: -180px;\n    position:relative;\n    z-index: 5;\n  }\n</style>\n\n  <div style=\"\" data-display-unit=\"\" data-id=\"146443\" data-category-click=\"click\" data-category-impression=\"impression\" data-context-type=\"home\" data-special=\"nothing\" data-article-id=\"\" data-type-of=\"in_house\">\n          <div class=\"crayons-card crayons-card--secondary crayons-bb bb-placement js-billboard\" style=\"display: inline-flex; flex-direction: column; align-items: center; margin: 0 auto 2rem auto; width: fit-content; padding: 2rem;\">\n        <p style=\"font-weight: bold; margin: 0 0 1rem 0;\">\n            \ud83d\udc8e DEV Diamond Sponsors\n        </p>\n        <p style=\"font-size: 0.8em; margin: 0 0 2rem 0;\">\n            Thank you to our Diamond Sponsors for supporting the DEV Community\n        </p>\n    \n        <div style=\"display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem;\">\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://aistudio.google.com/?utm_source=partner&amp;utm_medium=partner&amp;utm_campaign=FY25-Global-DEVpartnership-sponsorship-AIS&amp;utm_content=-&amp;utm_term=-&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjlyhbdqehj3akhz166w.png\" alt=\"Google AI - Official AI Model and Platform Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 54px; padding: 10px;\" loading=\"lazy\" width=\"2048\" height=\"472\">\n                </a>\n                <p style=\"text-align: center;\">Google AI is the official AI Model and Platform Partner of DEV</p>\n            </div>\n\n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://neon.tech/?ref=devto&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl88cil6afxzmgwrgtt.png\" alt=\"Neon - Official Database Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Neon is the official database partner of DEV</p>\n            </div>\n    \n            <div style=\"display: inline-block; max-width: 240px; font-size: 0.8em; font-style: italic; text-align: center; padding: 10px; background: #ffffff; border-radius: 5px; color: #404040;\">\n                <a href=\"https://www.algolia.com/developers/?utm_source=devto&amp;utm_medium=referral&amp;bb=146443\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display: flex; justify-content: center; align-items: center;\">\n                    <img src=\"https://media2.dev.to/dynamic/image/width=880%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv30ephnolfvnlwgwm0yz.png\" alt=\"Algolia - Official Search Partner\" style=\"display: block; background: #ffffff; margin: 0 auto; width: auto; height: 60px; padding: 10px;\" loading=\"lazy\" width=\"2286\" height=\"596\">\n                </a>\n                <p style=\"text-align: center;\">Algolia is the official search partner of DEV</p>\n            </div>\n        </div>\n    </div>\n  </div>\n\n\n    <p class=\"fs-s crayons-footer__description\">\n      <a class=\"c-link c-link--branded fw-medium\" aria-label=\"DEV Community Home\" href=\"/\">DEV Community</a> \u2014 A space to discuss and keep up software development and manage your software career\n    </p>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/\">\n      Home\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/about\">\n      About\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/contact\">\n      Contact\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"https://mlh.io/\">\n      MLH\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <ul class=\"footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0\" style=\"\">\n        <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/code-of-conduct\">\n      Code of Conduct\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/privacy\">\n      Privacy Policy\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n  <li class=\"footer__nav-link flex items-center\">\n    <a href=\"/terms\">\n      Terms of Use\n    </a>\n    <span class=\"dot ml-2\"></span>\n  </li>\n\n    </ul>\n\n    <div class=\"fs-s\">\n      <p>Built on <a class=\"c-link c-link--branded\" target=\"_blank\" rel=\"noopener\" href=\"https://www.forem.com\">Forem</a> \u2014 the <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/opensource\">open source</a> software that powers <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to\">DEV</a> and other inclusive communities.</p>\n      <p>Made with love and <a target=\"_blank\" rel=\"noopener\" class=\"c-link c-link--branded\" href=\"https://dev.to/t/rails\">Ruby on Rails</a>. DEV Community <span title=\"copyright\">\u00a9</span> 2016 - 2026.</p>\n    </div>\n  </div>\n</footer>\n<div id=\"snack-zone\"></div>\n\n    <div id=\"global-signup-modal\" class=\"authentication-modal hidden\">\n  <div class=\"authentication-modal__container\">\n    <figure class=\"authentication-modal__image-container\">\n      <img class=\"authentication-modal__image\" src=\"https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png\" alt=\"DEV Community\" loading=\"lazy\">\n    </figure>\n    <div class=\"authentication-modal__content\">\n      <p class=\"authentication-modal__description\">\n          We're a place where coders share, stay up-to-date and grow their careers.\n      </p>\n    </div>\n    <div class=\"authentication-modal__actions\">\n      <a href=\"https://dev.to/enter?signup_subforem=1\" class=\"crayons-btn\" aria-label=\"Log in\" data-no-instant=\"\">\n        Log in\n      </a>\n      <a href=\"https://dev.to/enter?signup_subforem=1&amp;state=new-user\" class=\"crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account\" aria-label=\"Create new account\" data-no-instant=\"\">\n        Create account\n      </a>\n    </div>\n  </div>\n</div>\n\n<script src=\"https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js\" defer=\"defer\"></script>\n\n    <div id=\"cookie-consent\"></div>\n  <div id=\"reaction-category-resources\" class=\"hidden\" aria-hidden=\"true\">\n    <img data-name=\"Like\" data-slug=\"like\" data-position=\"1\" src=\"https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Unicorn\" data-slug=\"unicorn\" data-position=\"2\" src=\"https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Exploding Head\" data-slug=\"exploding_head\" data-position=\"3\" src=\"https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Raised Hands\" data-slug=\"raised_hands\" data-position=\"4\" src=\"https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg\" width=\"18\" height=\"18\">\n    <img data-name=\"Fire\" data-slug=\"fire\" data-position=\"5\" src=\"https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg\" width=\"18\" height=\"18\">\n</div>\n\n    <script>\n  var userSignedIn = false;\n  if (document.readyState === 'complete' || document.readyState === 'interactive') {\n    initAuth();\n  } else {\n    document.addEventListener('DOMContentLoaded', initAuth);\n  }\n\n  function initAuth() {\n    var paramToken = new URLSearchParams(window.location.search).get('jwt');\n\n    if (paramToken && !userSignedIn) {\n      authenticateUser(paramToken);\n    } else {\n      var iframe = document.createElement('iframe');\n      iframe.style.display = 'none';\n      iframe.src = 'https://forem.com/auth_pass/iframe';\n  \n      document.body.appendChild(iframe);\n  \n      window.addEventListener('message', function(event) {\n        if (event.origin !== 'https://forem.com' && event.origin !== window.location.origin) {\n          return;\n        }\n  \n        var data = event.data;\n  \n        if (data.authenticated && !userSignedIn) {\n          authenticateUser(data.token);\n        } else if(data.authenticated && window.ReactNativeWebView && window.ReactNativeWebView.postMessage) {\n          window.ReactNativeWebView.postMessage(JSON.stringify({\n            action: 'login',\n            token: data.token,\n          }));\n        }\n      });  \n    }\n\n    function authenticateUser(token) {\n      fetch('/auth_pass/token_login', {\n        method: 'POST',\n        credentials: 'include',\n        headers: {\n          'Content-Type': 'application/json',\n          'X-CSRF-Token': getMetaContent('csrf-token'),\n        },\n        body: JSON.stringify({ token: token }),\n      })\n      .then(function(response) {\n        return response.json();\n      })\n      .then(function(data) {\n        if (data.success) {\n          if (document.head.querySelector('meta[name=\"user-signed-in\"][content=\"false\"]')) {\n            // Reload the page to update the user's state\n            location.reload();\n          }\n        }\n      })\n      .catch(function(error) {\n        console.error('Error during authentication:', error);\n      });\n    }\n\n    function getMetaContent(name) {\n      var element = document.querySelector('meta[name=\"' + name + '\"]');\n      return element ? element.getAttribute('content') : '';\n    }\n  }\n</script>\n\n  \n  \n  \n  \n  \n</body></html>",
  "cookies": null,
  "errors": null,
  "final_url": "https://dev.to/nicolaerario/comment/fe1e",
  "headers": {
    "accept-ranges": "bytes",
    "access-control-allow-origin": "*",
    "age": "88571",
    "cache-control": "public, no-cache",
    "content-encoding": "gzip",
    "content-length": "20395",
    "content-security-policy": "frame-ancestors https://dev.to https://forem.com https://future.forem.com https://core.forem.com https://version-feb-19-mjhc7.b-cdn.net https://codenewbie.forem.com https://coss.forem.com https://dumb.dev.to https://music.forem.com https://gg.forem.com https://vibe.forem.com https://popcorn.forem.com https://golf.forem.com https://design.forem.com https://maker.forem.com https://crypto.forem.com https://bookclub.forem.com https://zeroday.forem.com https://open.forem.com https://village.forem.com https://bizarro.forem.com https://wasp.forem.com https://hmpljs.forem.com https://experimental.forem.com https://parenting.forem.com https://journal.forem.com https://grow.forem.com https://devbrasil.forem.com https://stormkit.forem.com https://scale.forem.com https://dev.to; script-src 'self' 'unsafe-eval'",
    "content-type": "text/html; charset=utf-8",
    "date": "Sat, 21 Mar 2026 10:45:43 GMT",
    "etag": "W/\"2b3cec0b65c2b6a89afe3cdbac328dc5\"",
    "link": "<https://assets.dev.to/assets/minimal-38ef7c1d77ce4703c9933f4a7341c47fda3dfe7a3684438074091ad6e2217919.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/views-c39024a1059d955b68e543c34bfc656efb2a240d268fc9f171f1a18957582a81.css>; rel=preload; as=style; nopush,<https://assets.dev.to/assets/crayons-9da8521a7ce3cbf2b48ea811297907525a284963650c9d26fdc4bfe106e7eba9.css>; rel=preload; as=style; nopush",
    "nel": "{\"report_to\":\"heroku-nel\",\"response_headers\":[\"Via\"],\"max_age\":3600,\"success_fraction\":0.01,\"failure_fraction\":0.1}",
    "referrer-policy": "strict-origin-when-cross-origin",
    "report-to": "{\"group\":\"heroku-nel\",\"endpoints\":[{\"url\":\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D\\u0026sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6\\u0026ts=1774001372\"}],\"max_age\":3600}",
    "reporting-endpoints": "heroku-nel=\"https://nel.heroku.com/reports?s=cQnzu%2FFO9i5uCehRSkeqbg2gtSk1z45WLuNCM2zpNK8%3D&sid=929419e7-33ea-4e2f-85f0-7d8b7cd5cbd6&ts=1774001372\"",
    "server": "Heroku",
    "strict-transport-security": "max-age=31557600",
    "vary": "Accept-Encoding, X-Loggedin",
    "via": "1.1 heroku-router, 1.1 varnish, 1.1 varnish",
    "x-accel-expires": "172800",
    "x-cache": "HIT, HIT",
    "x-cache-hits": "26, 1",
    "x-content-type-options": "nosniff",
    "x-download-options": "noopen",
    "x-permitted-cross-domain-policies": "none",
    "x-request-id": "3256226e-d10f-9658-a72a-14803a1ca40b",
    "x-runtime": "0.231911",
    "x-served-by": "cache-den-kden1300084-DEN, cache-chi-klot8100136-CHI",
    "x-timer": "S1774089943.495437,VS0,VE2",
    "x-xss-protection": "0"
  },
  "id": null,
  "scraper_data": null,
  "scraperouter": null,
  "screenshot_url": null,
  "status_code": 200
}

Page Title

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG... - DEV Community

Skip to content

Navigation menu [ ](/)

Search [ Powered by Algolia Search
](https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral)

[ Log in ](https://dev.to/enter?signup_subforem=1) [ Create account
](https://dev.to/enter?signup_subforem=1&state=new-user)

## DEV Community

Close

#  Discussion on: Django Cheat Sheet: Keep Credentials Secure with Environment
Variables

[View post](/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-
environment-variables-2ah5)

Collapse Expand



[ ](https://dev.to/nicolaerario)

[ Nicola Erario  ](https://dev.to/nicolaerario)

Nicola Erario

[ Nicola Erario  ](/nicolaerario)

Follow

  * Location 

Italy 🇮🇹

  * Joined 

Oct 18, 2018

• [ Sep 17 '19  ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe1e)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe1e)
  *   * Hide 
  *   *   * 

How do you manage Boolean with python-dotenv? I mean that ( for example)DEBUG
= True or DEBUG = False in .env file are always evaluated as True

Like comment:  Like comment:  7 likes Like  Comment button Reply

Collapse Expand



[ ](https://dev.to/jamestimmins)

[ James Timmins  ](https://dev.to/jamestimmins)

James Timmins

[ James Timmins  ](/jamestimmins)

Follow

  * Joined 

Sep 19, 2018

• [ Sep 17 '19  ](https://dev.to/jamestimmins/django-cheat-sheet-keep-
credentials-secure-with-environment-variables-2ah5#comment-fe27)

Dropdown menu

  * [Copy link](https://dev.to/jamestimmins/django-cheat-sheet-keep-credentials-secure-with-environment-variables-2ah5#comment-fe27)
  *   * Hide 
  *   *   * 

Yeah, that's an unfortunate drawback of dotenv. There's a couple of things you
can do.

  1. Explicitly check for a string value. DEBUG = (os.getenv("DEBUG") == 'true')
  2. Cast the val to a boolean DEBUG = bool(os.getenv("DEBUG")), and use an empty string to denote a false value `DEBUG=''`.
  3. Use a more fully-featured package like [django-environ](https://github.com/joke2k/django-environ). There's slightly more configuration required, but if your project has multiple boolean settings it might be worth it. (I haven't actually used django-environ, but it looks pretty interesting so I may investigate).

Like comment:  Like comment:  7 likes Like  Comment button Reply

Collapse Expand



[ ](https://dev.to/bhupesh)

[ Bhupesh Varshney 👾  ](https://dev.to/