1 2 3 4 5 6 | try:
import socket
hostname = socket.gethostname().replace('.','_')
exec "from host_settings.%s import *" % hostname
except ImportError, e:
raise e
|
More like this
- Keep settings.py in version control safely by mboersma 6 years, 2 months ago
- Read settings from local_settings.py by statico 3 years, 4 months ago
- staticview for app by limodou 5 years, 11 months ago
- Load a local settings file for dev/test environments by menendez 4 years, 9 months ago
- Load local settings by ofalk 3 years, 11 months ago
Comments
Very useful indeed. I use a similar approach:
settings.py:
I have a question though. Somebody told me this may not work in Mac or Windows. Have you tried that?
#
I haven't tried it out on Windows but OSX correctly returns the hostname.
#
Wow, what a great idea!
More code, shorter filenames:
#
Use of "exec" will scare some users away from this snippet. There may be valid use cases for exec, but many Python programmers IMHO avoid the use of it like the plague. Kind of like a goto statement in a C program - it's just not done :)
Using the built-in _import_ might be the way to go.
#
I tried to do something with import but it doesn't seem to support the from x import * syntax. Am I wrong?
#
working well on windows.
i'd like to change snippet a bit:
#
oops, guys, you're right. i have to read how to do "from ... import *" with import.
#