Commit c92b424e authored by Malcolm Tredinnick's avatar Malcolm Tredinnick
Browse files

Fixed #8239 -- Google App Engine has a restricted "imp" module, which doesn't

include one of the methods we use when constructing management help commands.
So postpone the resolving of the method name until when we actually need it
(which isn't run as part of GAE). Patch from Guido van Rossum.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@8425 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent 98be8415
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
import os
import sys
from optparse import OptionParser
from imp import find_module
import imp

import django
from django.core.management.base import BaseCommand, CommandError, handle_default_options
@@ -47,14 +47,14 @@ def find_management_module(app_name):
    # module, we need look for the case where the project name is part
    # of the app_name but the project directory itself isn't on the path.
    try:
        f, path, descr = find_module(part,path) 
        f, path, descr = imp.find_module(part,path)
    except ImportError,e:
        if os.path.basename(os.getcwd()) != part:
            raise e
        
    while parts:
        part = parts.pop()
        f, path, descr = find_module(part, path and [path] or None)
        f, path, descr = imp.find_module(part, path and [path] or None)
    return path

def load_command_class(app_name, name):