소스 검색

find_app: prefer app named "app"

Ask Solem 11 년 전
부모
커밋
7e824d62e3
1개의 변경된 파일15개의 추가작업 그리고 11개의 파일을 삭제
  1. 15 11
      celery/bin/base.py

+ 15 - 11
celery/bin/base.py

@@ -452,18 +452,22 @@ class Command(object):
             sym = import_from_cwd(app)
         if isinstance(sym, ModuleType):
             try:
-                return sym.celery
+                return sym.app
             except AttributeError:
-                if getattr(sym, '__path__', None):
-                    try:
-                        return self.find_app('{0}.celery:'.format(
-                                             app.replace(':', '')))
-                    except ImportError:
-                        pass
-                for suspect in values(vars(sym)):
-                    if isinstance(suspect, Celery):
-                        return suspect
-                raise
+                try:
+                    return sym.celery
+                except AttributeError:
+                    if getattr(sym, '__path__', None):
+                        try:
+                            return self.find_app(
+                                '{0}.celery:'.format(app.replace(':', '')),
+                            )
+                        except ImportError:
+                            pass
+                    for suspect in values(vars(sym)):
+                        if isinstance(suspect, Celery):
+                            return suspect
+                    raise
         return sym
 
     def symbol_by_name(self, name):