AttributeError: у объекта 'search' нет атрибута 'status_code' в проекте django - PullRequest
5 голосов
/ 04 апреля 2011

Я тестирую проект django, используя тестовый сервер, когда он дает мне следующее исключение

Traceback (последний последний вызов):

Файл "/usr/lib/pymodules/python2.6/django/core/servers/basehttp.py", строка 280, в работе self.result = приложение (self.environ, self.start_response)

Файл "/usr/lib/pymodules/python2.6/django/core/servers/basehttp.py", строка 674, в> вызов вернуть self.application (environment, start_response)

Файл "/usr/lib/pymodules/python2.6/django/core/handlers/wsgi.py", строка 245, в вызов ответ = middleware_method (запрос, ответ)

Файл "/usr/lib/pymodules/python2.6/django/middleware/common.py", строка 84, в> process_response if response.status_code == 404:

AttributeError: у объекта 'search' нет атрибута 'status_code'

Просто после прочтения этой трассировки я не думаю, что проблема в моем коде, но я не уверен. Может ли кто-нибудь просмотреть мой код и помочь мне решить эту проблему? мой код размещен на GitHub , и любые другие комментарии или предложения очень ценятся. Заранее спасибо за ваше время и внимание.

Ответы [ 2 ]

3 голосов
/ 04 апреля 2011

MusicGrep/musicgrep/views.py не возвращает экземпляр HttpResponse

2 голосов
/ 04 апреля 2011

Есть довольно много проблем с вашим кодом, но одна из причин, по которой вы указываете фактическую ошибку, заключается в том, что вы не создаете экземпляр своего подкласса FormWizard в вашем urlconf.

Как показывает документация , вам нужно вызвать класс search в urls.py, чтобы создать его экземпляр, поэтому вы передаете экземпляр, а не класс.

(r'^MusicGrep/$', 'MusicGrep.musicgrep.forms.search()'),

Это может помочь, если вы будете следовать рекомендациям PEP8 по именованию - если ваш класс назывался Search с заглавной буквой S, было бы более очевидно, что это на самом деле класс, а не функция.

...