title: Django Heroku Server Error (500) when I set Debug - False on True it is working fine
body: <p>I know that there are a lot of questions about that, but to be honest most of them stays unanswered or the solutions do not work.</p>
  
  <p>I have "simple" problem. When I set Debug to False and push it to heroku I get "Server Error (500)". I read those topics:</p>
  
  <p><a href="https://stackoverflow.com/questions/45391082/heroku-server-error-500-when-debug-false-whitenoise-could-not-find-style-c">Heroku server error (500) when Debug = False , whitenoise could not find style.css</a></p>
  
  <p><a href="https://stackoverflow.com/questions/55957618/whenever-debug-false-in-django-heroku-gives-server-error-500-and-when-debug-t">Whenever debug=False in django, Heroku gives Server Error (500) and when debug=True no error</a></p>
  
  <p><a href="https://www.reddit.com/r/djangolearning/comments/acj65x/why_am_i_getting_a_500_server_error_when/" rel="noreferrer">https://www.reddit.com/r/djangolearning/comments/acj65x/why_am_i_getting_a_500_server_error_when/</a></p>
  
  <p><a href="https://teamtreehouse.com/community/heroku-bad-request-500" rel="noreferrer">https://teamtreehouse.com/community/heroku-bad-request-500</a></p>
  
  <p>And I tried their solutions but it still don't work. Only solution that I didn't test and is supposed to help is to get rid of whitenoise. This one is kinda "no go" for me.</p>
  
  <p>What Can I do about this error?</p>
  
  <p>Thanks and Cheers!</p>
  
  <p>EDIT:</p>
  
  <p>Here is my log. I tried to comment out white noise but It didn't help.</p>
  
  <p>I was looking in my code but I don't have any reference to "favicon.ico". Also, I tried to run collectstatic because I found some topics related to that but it didn't work for me.</p>
  
  <p>First it asked me:</p>
  
  <pre><code>You have requested to collect static files at the destination
  location as specified in your settings:
  
      /app/staticfiles
  </code></pre>
  
  <p>And then I got error:</p>
  
  <pre><code>FileNotFoundError: [Errno 2] No such file or directory: '/app/static'
  </code></pre>
  
  <p>Which is weird, because first it confirmed with me that I overrited this folder from static to staticfiles. In my main directory I have folder "staticfiles". In my app folder I have folder "static". And with Debug off everything is working.</p>
  
  <pre><code>    2020-05-19T05:15:40.192943+00:00 heroku[router]: at=info method=GET path="/favicon.ico" host=robotbuilder.herokuapp.com request_id=eeaf4fd1-b73b-4e84-aacd-7e701d3e8932 fwd="83.26.255.146" dyno=web.1 connect=1ms service=3ms status=404 bytes=388 protocol=http
  
  2020-05-19T05:15:39.991705+00:00 app[web.1]: [2020-05-19 05:15:39 +0000] [11] [ERROR] Error handling request /
  
  2020-05-19T05:15:39.991725+00:00 app[web.1]: Traceback (most recent call last):
  
  2020-05-19T05:15:39.991726+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 134, in handle
  
  2020-05-19T05:15:39.991734+00:00 app[web.1]:     self.handle_request(listener, req, client, addr)
  
  2020-05-19T05:15:39.991734+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 175, in handle_request
  
  2020-05-19T05:15:39.991735+00:00 app[web.1]:     respiter = self.wsgi(environ, resp.start_response)
  
  2020-05-19T05:15:39.991735+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/wsgi.py", line 133, in __call__
  
  2020-05-19T05:15:39.991735+00:00 app[web.1]:     response = self.get_response(request)
  
  2020-05-19T05:15:39.991736+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py", line 75, in get_response
  
  2020-05-19T05:15:39.991736+00:00 app[web.1]:     response = self._middleware_chain(request)
  
  2020-05-19T05:15:39.991736+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991737+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991739+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991740+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991741+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991741+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991741+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/whitenoise/middleware.py", line 58, in __call__
  
  2020-05-19T05:15:39.991742+00:00 app[web.1]:     response = self.get_response(request)
  
  2020-05-19T05:15:39.991746+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991747+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991747+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991747+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991747+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991748+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991748+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991748+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991748+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991749+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991749+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991749+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991750+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991750+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991750+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991750+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991751+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991751+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991751+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991752+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991752+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991752+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991752+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991753+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991753+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991753+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991753+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991754+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991754+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991755+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991763+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991763+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991763+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991764+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991764+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991764+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991764+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991765+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991765+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991765+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991765+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991766+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991766+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991766+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991766+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991767+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991767+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991767+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991767+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991768+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991768+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991768+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991768+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991769+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991769+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/utils/deprecation.py", line 94, in __call__
  
  2020-05-19T05:15:39.991769+00:00 app[web.1]:     response = response or self.get_response(request)
  
  2020-05-19T05:15:39.991769+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991770+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991770+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991770+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991771+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991771+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991771+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/whitenoise/middleware.py", line 58, in __call__
  
  2020-05-19T05:15:39.991771+00:00 app[web.1]:     response = self.get_response(request)
  
  2020-05-19T05:15:39.991772+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 36, in inner
  
  2020-05-19T05:15:39.991772+00:00 app[web.1]:     response = response_for_exception(request, exc)
  
  2020-05-19T05:15:39.991772+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
  
  2020-05-19T05:15:39.991772+00:00 app[web.1]:     response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  
  2020-05-19T05:15:39.991780+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py", line 34, in inner
  
  2020-05-19T05:15:39.991781+00:00 app[web.1]:     response = get_response(request)
  
  2020-05-19T05:15:39.991781+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py", line 115, in _get_response
  
  2020-05-19T05:15:39.991782+00:00 app[web.1]:     response = self.process_exception_by_middleware(e, request)
  
  2020-05-19T05:15:39.991782+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py", line 113, in _get_response
  
  2020-05-19T05:15:39.991782+00:00 app[web.1]:     response = wrapped_callback(request, *callback_args, **callback_kwargs)
  
  2020-05-19T05:15:39.991783+00:00 app[web.1]:   File "/app/builder/views.py", line 8, in home
  
  2020-05-19T05:15:39.991783+00:00 app[web.1]:     return render(request, "builder/home.html")
  
  2020-05-19T05:15:39.991783+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/shortcuts.py", line 19, in render
  
  2020-05-19T05:15:39.991784+00:00 app[web.1]:     content = loader.render_to_string(template_name, context, request, using=using)
  
  2020-05-19T05:15:39.991790+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/loader.py", line 62, in render_to_string
  
  2020-05-19T05:15:39.991790+00:00 app[web.1]:     return template.render(context, request)
  
  2020-05-19T05:15:39.991791+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/backends/django.py", line 61, in render
  
  2020-05-19T05:15:39.991791+00:00 app[web.1]:     return self.template.render(context)
  
  2020-05-19T05:15:39.991791+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 171, in render
  
  2020-05-19T05:15:39.991792+00:00 app[web.1]:     return self._render(context)
  
  2020-05-19T05:15:39.991792+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 163, in _render
  
  2020-05-19T05:15:39.991792+00:00 app[web.1]:     return self.nodelist.render(context)
  
  2020-05-19T05:15:39.991792+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 936, in render
  
  2020-05-19T05:15:39.991793+00:00 app[web.1]:     bit = node.render_annotated(context)
  
  2020-05-19T05:15:39.991793+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 903, in render_annotated
  
  2020-05-19T05:15:39.991798+00:00 app[web.1]:     return self.render(context)
  
  2020-05-19T05:15:39.991798+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/loader_tags.py", line 150, in render
  
  2020-05-19T05:15:39.991798+00:00 app[web.1]:     return compiled_parent._render(context)
  
  2020-05-19T05:15:39.991799+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 163, in _render
  
  2020-05-19T05:15:39.991799+00:00 app[web.1]:     return self.nodelist.render(context)
  
  2020-05-19T05:15:39.991799+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 936, in render
  
  2020-05-19T05:15:39.991799+00:00 app[web.1]:     bit = node.render_annotated(context)
  
  2020-05-19T05:15:39.991800+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/template/base.py", line 903, in render_annotated
  
  2020-05-19T05:15:39.991800+00:00 app[web.1]:     return self.render(context)
  
  2020-05-19T05:15:39.991800+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/templatetags/static.py", line 106, in render
  
  2020-05-19T05:15:39.991800+00:00 app[web.1]:     url = self.url(context)
  
  2020-05-19T05:15:39.991804+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/templatetags/static.py", line 103, in url
  
  2020-05-19T05:15:39.991804+00:00 app[web.1]:     return self.handle_simple(path)
  
  2020-05-19T05:15:39.991804+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/templatetags/static.py", line 118, in handle_simple
  
  2020-05-19T05:15:39.991805+00:00 app[web.1]:     return staticfiles_storage.url(path)
  
  2020-05-19T05:15:39.991805+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/contrib/staticfiles/storage.py", line 153, in url
  
  2020-05-19T05:15:39.991805+00:00 app[web.1]:     return self._url(self.stored_name, name, force)
  
  2020-05-19T05:15:39.991806+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/contrib/staticfiles/storage.py", line 132, in _url
  
  2020-05-19T05:15:39.991806+00:00 app[web.1]:     hashed_name = hashed_name_func(*args)
  
  2020-05-19T05:15:39.991806+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.6/site-packages/django/contrib/staticfiles/storage.py", line 423, in stored_name
  
  2020-05-19T05:15:39.991806+00:00 app[web.1]:     raise ValueError("Missing staticfiles manifest entry for '%s'" % clean_name)
  
  2020-05-19T05:15:39.991807+00:00 app[web.1]: ValueError: Missing staticfiles manifest entry for 'builder/logo.png'
  
  2020-05-19T05:15:39.992027+00:00 app[web.1]: 10.95.191.28 - - [19/May/2020:05:15:39 +0000] "GET / HTTP/1.1" 500 0 "-" "-"
  
  2020-05-19T05:15:40.192825+00:00 app[web.1]: 10.95.191.28 - - [19/May/2020:05:15:40 +0000] "GET /favicon.ico HTTP/1.1" 404 179 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0"
  
  2020-05-19T05:15:39.996509+00:00 heroku[router]: at=info method=GET path="/" host=robotbuilder.herokuapp.com request_id=de877e93-558a-40ab-bf11-b6de261cb707 fwd="83.26.255.146" dyno=web.1 connect=1ms service=57ms status=500 bytes=244 protocol=http
  </code></pre>
  
  <p>EDIT2:</p>
  
  <pre><code>    import os
  import django_heroku
  from decouple import config
  import dj_database_url
  
  # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
  BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  
  
  # Quick-start development settings - unsuitable for production
  # See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/
  
  # SECURITY WARNING: keep the secret key used in production secret!
  SECRET_KEY = config('SECRET_KEY')
  
  # SECURITY WARNING: don't run with debug turned on in production!
  DEBUG = False
  
  ALLOWED_HOSTS = []
  
  
  # Application definition
  
  INSTALLED_APPS = [
      'django.contrib.admin',
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles',
      'builder',
  ]
  
  MIDDLEWARE = [
      'django.middleware.security.SecurityMiddleware',
      'django.contrib.sessions.middleware.SessionMiddleware',
      'django.middleware.common.CommonMiddleware',
      'django.middleware.csrf.CsrfViewMiddleware',
      'django.contrib.auth.middleware.AuthenticationMiddleware',
      'django.contrib.messages.middleware.MessageMiddleware',
      'django.middleware.clickjacking.XFrameOptionsMiddleware',
      # Simplified static file serving.
      # https://warehouse.python.org/project/whitenoise/
      'whitenoise.middleware.WhiteNoiseMiddleware',
  ]
  
  ROOT_URLCONF = 'robot_builder.urls'
  
  TEMPLATES = [
      {
          'BACKEND': 'django.template.backends.django.DjangoTemplates',
          'DIRS': [],
          'APP_DIRS': True,
          'OPTIONS': {
              'context_processors': [
                  'django.template.context_processors.debug',
                  'django.template.context_processors.request',
                  'django.contrib.auth.context_processors.auth',
                  'django.contrib.messages.context_processors.messages',
              ],
          },
      },
  ]
  
  WSGI_APPLICATION = 'robot_builder.wsgi.application'
  
  
  # Database
  # https://docs.djangoproject.com/en/3.0/ref/settings/#databases
  
  DATABASES = {
      'default': {
          'ENGINE': 'django.db.backends.postgresql_psycopg2',
      }
  }
  # If you want to work with your remote database on your local machine, you need to paste link from heroku lower:
  # DATABASES['default'] = dj_database_url.config(default='postgres://qkwlkrkahynyik:21a1420ab5820795f3a0c736ebb607419fc7a111f093924dcfc4567dfd906b9f@ec2-54-147-209-121.compute-1.amazonaws.com:5432/d2v01dp40p4er2')
  
  db_from_env = dj_database_url.config(conn_max_age=600)
  DATABASES['default'].update(db_from_env)
  
  # Password validation
  # https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators
  
  AUTH_PASSWORD_VALIDATORS = [
      {
          'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
      },
  ]
  
  
  # Internationalization
  # https://docs.djangoproject.com/en/3.0/topics/i18n/
  
  LANGUAGE_CODE = 'en-us'
  
  TIME_ZONE = 'UTC'
  
  USE_I18N = True
  
  USE_L10N = True
  
  USE_TZ = True
  
  
  # Static files (CSS, JavaScript, Images)
  # https://docs.djangoproject.com/en/3.0/howto/static-files/
  
  STATIC_URL = '/static/'
  STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
  STATIC_TMP = os.path.join(BASE_DIR, 'static')
  STATICFILES_DIRS = (
      os.path.join(BASE_DIR, 'static'),
  )
  MEDIA_URL = '/media/'
  MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
  
  
  # Simplified static file serving.
  # https://warehouse.python.org/project/whitenoise/
  STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
  
  
   # Debugging in heroku live
  LOGGING = {
      'version': 1,
      'disable_existing_loggers': False,
      'formatters': {
          'verbose': {
              'format': ('%(asctime)s [%(process)d] [%(levelname)s] ' +
                         'pathname=%(pathname)s lineno=%(lineno)s ' +
                         'funcname=%(funcName)s %(message)s'),
              'datefmt': '%Y-%m-%d %H:%M:%S'
          },
          'simple': {
              'format': '%(levelname)s %(message)s'
          }
      },
      'handlers': {
          'null': {
              'level': 'DEBUG',
              'class': 'logging.NullHandler',
          },
          'console': {
              'level': 'DEBUG',
              'class': 'logging.StreamHandler',
              'formatter': 'verbose'
          }
      },
      'loggers': {
          'testlogger': {
              'handlers': ['console'],
              'level': 'INFO',
          }
      }
  }
  
  DEBUG_PROPAGATE_EXCEPTIONS = True
  COMPRESS_ENABLED = os.environ.get('COMPRESS_ENABLED', False)
  
  
  # Activate Django-Heroku.
  django_heroku.settings(locals())
  </code></pre>
  
  <p>My folder structure:</p>
  
  <pre><code>robot_builder
      &gt; builder
          &gt;&gt; migrations
          &gt;&gt; static
              &gt;&gt;&gt; css
              &gt;&gt;&gt; builder
                  &gt;&gt;&gt;&gt; my images, including logo.png used as favicon
          &gt;&gt; templates
          &gt;&gt; models.py etc.
      &gt; media
      &gt; robot_builder
          &gt;&gt; settings.py etc.
      &gt; staticfiles
  </code></pre>