Почему мой маршрут не работает? - PullRequest
1 голос
/ 12 сентября 2010

Индексный маршрут работает, когда я захожу в / home / index

Но это не работает, почему я печатаю / home / test

Что здесь не так, очень запутано!

импорт журналов

из пилонов запрос на импорт, ответ, сессия, tmpl_context как c, URL из pylons.controllers.util, отмена импорта, перенаправление

из helloworld.lib.base import BaseController, рендер

log = logging.getLogger ( имя )

класс HelloController (BaseController):

def index(self):
    # Return a rendered template
    #return render('/hello.mako')
    # or, return a string
    return 'Hello World from index() action!'


def test(self):
return 'blah'

Я получаю эту ошибку:

WebError Traceback:
⇝ NotImplementedError: Action u'test' is not implemented
View as:   Interactive  |  Text  |  XML (full)
URL: http://127.0.0.1:5000/hello/test
Module weberror.evalexception:431 in respond          view
>>  app_iter = self.application(environ, detect_start_response)
Module beaker.middleware:152 in __call__          view
>>  return self.wrap_app(environ, session_start_response)
Module routes.middleware:131 in __call__          view
>>  response = self.app(environ, start_response)
Module pylons.wsgiapp:107 in __call__          view
>>  response = self.dispatch(controller, environ, start_response)
Module pylons.wsgiapp:312 in dispatch          view
>>  return controller(environ, start_response)
Module helloworld.lib.base:15 in __call__          view
>>  return WSGIController.__call__(self, environ, start_response)
Module pylons.controllers.core:211 in __call__          view
>>  response = self._dispatch_call()
Module pylons.controllers.core:168 in _dispatch_call          view
>>  action)
NotImplementedError: Action u'test' is not implemented

1 Ответ

2 голосов
/ 13 сентября 2010

Дважды проверьте ваш отступ. Если def test (self) находится на том же уровне отступа, что и класс, вы не получите ошибку отступа.

Это выдает ошибку отступа:

class HelloController(BaseController):
    def index(self):
        return "hello from index()"

  def test(self):
        return "blah"

Это не так:

class HelloController(BaseController):
    def index(self):
        return "hello from index()"

def test(self):
    return "blah"
...