2013-06-22 7 views
9

Ich halte die folgenden Fehler in meiner Wache AusnahmenAttribute: ‚RegexURLResolver‘ Objekt hat kein Attribut ‚_urlconf_module‘

bekommen

AttributeError: 'RegexURLResolver' object has no attribute '_urlconf_module'

Und die Spur verweist nur auf Code, um die django Codebasis withing ohne einem Zeige Platz in meiner Anwendung. Meine Protokolle sind auch sauber. Was könnte ein möglicher Grund dafür sein?

 raise Resolver404({'path' : path}) 
    @property 
    def urlconf_module(self): 
     try: 
      return self._urlconf_module 
     except AttributeError: 
      self._urlconf_module = import_module(self.urlconf_name) 
      return self._urlconf_module 
    @property 
'self' 
<RegexURLResolver urls (None:None) ^/> 
+1

Sieht aus, als ob Sie den Regexresolver einer Klasse vor der Initialisierung aufrufen. Es könnte ein Abhängigkeitsproblem sein. – karthikr

+2

Können Sie es ausarbeiten? Ich habe nichts relevant für URLs geändert und dieser Fehler begann zu erscheinen. Irgendeine Idee, wie ich dieses Problem beheben kann? –

Antwort

2

Ansonsten im Internet fand ich diese:

The issue is caused by an import ordering problem, in your example code you call urlresolvers.reverse which will load example/urls.py, which will trigger an admin.autodiscover() call, which will load social/apps/django_app/default/admin.py, which will try to load your custom user model which will fail to load your user model.

Ich schlug das Problem, wenn ich eine Funktion direkt von views.py genannt, und diese Funktion in Folge Verwendung von resolve, was zu einem Import führt wahrscheinlich Problem seit dem Aufruf einer Funktion direkt von views.py ist ein schlechter Stil. Der obige Kommentar half jedoch, das Problem zu beheben.

+0

Sie haben es wahrscheinlich hier gefunden: https://github.com/omab/python-social-auth/issues/269 – Mark