Login

better localsettings import

Author:
andrew
Posted:
July 11, 2015
Language:
Python
Version:
Not specified
Tags:
development staging production localsettings
Score:
1 (after 1 ratings)

Most people simply wrap "from localsettings import *" in a try/except ImportError block. That's what I've done for years, but recently came up with this better way.

The problem this snippet solves is that if your localsettings.py itself causes an ImportError somehow, that error will be silently swallowed and your intended localsettings will be ignored. Instead, we use imp to first check if the module exists, then unconditionally try to import it.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Do this `imp` dance so as to distinguish errors in
# localsettings.py preventing it from being imported from
# the absence of a file.

import imp
try:
    imp.find_module('localsettings')
except ImportError:
    pass
else:
    from localsettings import *

More like this

  1. Automatically setup raw_id_fields ForeignKey & OneToOneField by agusmakmun 5 months ago
  2. Crispy Form by sourabhsinha396 5 months, 3 weeks ago
  3. ReadOnlySelect by mkoistinen 6 months, 1 week ago
  4. Verify events sent to your webhook endpoints by santos22 7 months ago
  5. Django Language Middleware by agusmakmun 7 months, 2 weeks ago

Comments

Please login first before commenting.