From e29afe7974c169f0028c71b6c33a793bc5f7464d Mon Sep 17 00:00:00 2001 From: Adrian Holovaty Date: Tue, 19 Jul 2005 17:58:01 +0000 Subject: [PATCH] Fixed #88 -- settings are now forgiving of single-element INSTALLED_APPS and TEMPLATE_DIRS without trailing commas. git-svn-id: http://code.djangoproject.com/svn/django/trunk@213 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/conf/settings.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/django/conf/settings.py b/django/conf/settings.py index 1ea1c93cde..6f03d1c202 100644 --- a/django/conf/settings.py +++ b/django/conf/settings.py @@ -29,9 +29,16 @@ try: except ImportError, e: raise EnvironmentError, "Could not import DJANGO_SETTINGS_MODULE '%s' (is it on sys.path?): %s" % (me.SETTINGS_MODULE, e) +# Settings that should be converted into tuples if they're mistakenly entered +# as strings. +tuple_settings = ("INSTALLED_APPS", "TEMPLATE_DIRS") + for setting in dir(mod): if setting == setting.upper(): - setattr(me, setting, getattr(mod, setting)) + setting_value = getattr(mod, setting) + if setting in tuple_settings and type(setting_value) == str: + setting_value = (setting_value,) # In case the user forgot the comma. + setattr(me, setting, setting_value) # save DJANGO_SETTINGS_MODULE in case anyone in the future cares me.SETTINGS_MODULE = os.environ.get('DJANGO_SETTINGS_MODULE', '')