我在 CherrPy 项目中管理我的路线时遇到了一个大问题。
我的项目是这样模块化的:
project-name/lib/app-name1
/app-name2
我想要的是: 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