[utils.py] Errors in utils.import_attr are more understandable.

This commit is contained in:
Valentin Samir 2016-03-18 13:03:23 +01:00
parent 3f4a4366b3
commit 93e11befc5
1 changed files with 8 additions and 1 deletions

View File

@ -39,8 +39,15 @@ def import_attr(path):
"""transform a python module.attr path to the attr"""
if not isinstance(path, str):
return string
if "." not in path:
ValueError("%r should be of the form `module.attr` and we just got `attr`" % path)
module, attr = path.rsplit('.', 1)
return getattr(import_module(module), attr)
try:
return getattr(import_module(module), attr)
except ImportError:
raise ImportError("Module %r not found" % module)
except AttributeError:
raise AttributeError("Module %r has not attribut %r" % (module, attr))
def redirect_params(url_name, params=None):