Python 如何处理CherrPy的路线调度?

Python 如何处理CherrPy的路线调度?,python,routes,cherrypy,Python,Routes,Cherrypy,我在CherrPy项目中管理路线时遇到了一个大问题 我的项目模块化如下: project-name/lib/app-name1 /app-name2 我想要的是: 1.所有路由都是其应用程序独有的,在lib之外有一个主路由调度器 使用MethodDispatcher匹配URL。我应该直接匹配用户视图的登录方式 我所知道的是: class Root(object): pass root = Root() root.user = UserView() #

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

我的项目模块化如下:

project-name/lib/app-name1
                /app-name2
我想要的是: 1.所有路由都是其应用程序独有的,在lib之外有一个主路由调度器

  • 使用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类的login函数。调用UserView类的Post函数

    所以,现在有点混乱,如果能弄清楚就好了


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

    用户视图类肯定出了问题,因为它似乎对我有用。