Hi, I am following tutorial (for Django 1.8 <https://docs.djangoproject.com/en/1.8/intro/tutorial01/>), I am using Windows 8, Pycharm, Python 2.7.9 and Django 1.8.3. I have reached the third chapter (on views) and somewhere on the way I restarted my laptop and probably installed some updates. Out of sudden the commands "python manage.py ..." stopped working (to be precise I was trying to use python manage.py runserver command), and I was getting ImportError (a long stack trace with info Import by filename is not supported). So I moved my project to trash and tried to start a new project but was not able to run django-admin startproject :( The present stacktrace (still with ImportError) refers to __init__.py in importlib directory (C:/Python27/Lib/importlib/__init__.py) and it seems to hate __import__(name) part of import_module function. Could anyone help me on that as I cannot see what has changed since when everything worked smoothly :( Here's the __init__.py code:
"""Backport of importlib.import_module from 3.x.""" # While not critical (and in no way guaranteed!), it would be nice to keep this # code compatible with Python 2.3. import sys def _resolve_name(name, package, level): """Return the absolute name of the module to be imported.""" if not hasattr(package, 'rindex'): raise ValueError("'package' not set to a string") dot = len(package) for x in xrange(level, 1, -1): try: dot = package.rindex('.', 0, dot) except ValueError: raise ValueError("attempted relative import beyond top-level " "package") return "%s.%s" % (package[:dot], name) def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ if name.startswith('.'): if not package: raise TypeError("relative imports require the 'package' argument") level = 0 for character in name: if character != '.': break level += 1 name = _resolve_name(name[level:], package, level) __import__(name) return sys.modules[name] -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at http://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/9c734b44-61e6-4400-9b0e-da07806621db%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.