簡體   English   中英

RuntimeError:調用Python對象時超出了最大遞歸深度

[英]RuntimeError: maximum recursion depth exceeded while calling a Python object

當我嘗試運行以下測試用例時會出現此錯誤,該用例寫在名為“ administration”的django應用的models.py中:

from django.test import Client, TestCase
from django.core import mail


class ClientTest( TestCase ):

    fixtures = [ 'testdata.json' ]

    def test_get_register( self ):
        response = self.client.get( '/accounts/register/', {} )
        self.assertEqual( response.status_code, 200 )

該錯誤專門在此行出現:

response = self.client.get( '/accounts/register/', {} ) 

我的Django版本是1.2.1和python 2.6,而satchmo版本是0.9.2-pre hg-unknown。 我在Windows平台(xp sp2)中進行編碼。 運行測試用例的命令是:

python manage.py test administration

完整的錯誤日志如下:

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 121, in by_host

    site = by_host(host=host[4:], id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 124, in by_host

    site = by_host(host = 'www.%s' % host, id_only=id_only)
  File "build\bdist.win32\egg\threaded_multihost\sites.py", line 101, in by_host

    site = Site.objects.get(domain=host)
  File "C:\django\django\db\models\manager.py", line 132, in get
    return self.get_query_set().get(*args, **kwargs)
  File "C:\django\django\db\models\query.py", line 336, in get
    num = len(clone)
  File "C:\django\django\db\models\query.py", line 81, in __len__
    self._result_cache = list(self.iterator())
  File "C:\django\django\db\models\query.py", line 269, in iterator
    for row in compiler.results_iter():
  File "C:\django\django\db\models\sql\compiler.py", line 672, in results_iter
    for rows in self.execute_sql(MULTI):
  File "C:\django\django\db\models\sql\compiler.py", line 717, in execute_sql
    sql, params = self.as_sql()
  File "C:\django\django\db\models\sql\compiler.py", line 65, in as_sql
    where, w_params = self.query.where.as_sql(qn=qn, connection=self.connection)

  File "C:\django\django\db\models\sql\where.py", line 91, in as_sql
    sql, params = child.as_sql(qn=qn, connection=connection)
  File "C:\django\django\db\models\sql\where.py", line 94, in as_sql
    sql, params = self.make_atom(child, qn, connection)
  File "C:\django\django\db\models\sql\where.py", line 141, in make_atom
    lvalue, params = lvalue.process(lookup_type, params_or_value, connection)
  File "C:\django\django\db\models\sql\where.py", line 312, in process
    connection=connection, prepared=True)
  File "C:\django\django\db\models\fields\subclassing.py", line 53, in inner
    return func(*args, **kwargs)
  File "C:\django\django\db\models\fields\subclassing.py", line 53, in inner
    return func(*args, **kwargs)
  File "C:\django\django\db\models\fields\__init__.py", line 323, in get_db_prep
_lookup
    return [self.get_db_prep_value(value, connection=connection, prepared=prepar
ed)]
  File "C:\django\django\db\models\fields\subclassing.py", line 53, in inner
    return func(*args, **kwargs)
  File "C:\django\django\db\models\fields\subclassing.py", line 53, in inner
    return func(*args, **kwargs)
RuntimeError: maximum recursion depth exceeded while calling a Python object

----------------------------------------------------------------------
Ran 7 tests in 48.453s

FAILED (errors=1)
Destroying test database 'default'...

django測試客戶端使用默認的基本URL:

http:// testserver /

這會使您的測試網址/ accounts / register /變成:

http:// testserver / accounts / register /

因此,您應該在django sites.site模型中添加“ testserver”作為基本URL。 最大遞歸深度超過了上限,因為Django客戶端未在sites.site中找到“ testserver”作為域

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM