2

我在 CherrPy 项目中管理我的路线时遇到了一个大问题。

我的项目是这样模块化的:

project-name/lib/app-name1
                /app-name2

我想要的是: 1. 所有路由都专属于他们的应用程序,在库之外有一个主要的路由调度程序。

  1. 使用 MethodDispatcher 匹配 url。我应该直接匹配用户视图的登录方法。

我所拥有的是:

class Root(object):
    pass

root = Root()

root.user = UserView()
#root.user.login = UserView()
d = cherrypy.dispatch.RoutesDispatcher()
d.connect('login', '/user/login', controller=root.user, action='login')
#root.user.login = UserView()

conf = {
    'global': {
        'server.socket_host': '0.0.0.0',
        'server.socket_port': 8000,
    },
    '/': {
        'request.dispatch': d,
    },
}


cherrypy.quickstart(root, '/', conf

)

虽然我在点击 UserView 控制器的登录功能方面非常失败。

它仅在我执行 root.user.login = UserView() 时才有效,但这不会调用 UserView 类的登录函数。这调用了 UserView 类的 Post 函数。

所以,现在有点混乱,如果能有一些清晰的话会很好。

一个 url 看起来像:localhost/user/login?params

4

0 回答 0