Python CherryPy URL映射不起作用

Python CherryPy URL映射不起作用,python,url,cherrypy,url-mapping,Python,Url,Cherrypy,Url Mapping,我正试图让URL映射工作,但到目前为止还没有能够。我正在附加config.conf、global.conf和server.py文件,请帮助 我已经阅读了CherryPy关于派遣的文档,但我就是不知道我在哪里做了错事。我是CherryPy的新手 我得到以下错误: 404 Not Found The path '/titles.html' was not found. In addition, the custom error page failed: ValueError: unsupport

我正试图让URL映射工作,但到目前为止还没有能够。我正在附加config.conf、global.conf和server.py文件,请帮助

我已经阅读了CherryPy关于派遣的文档,但我就是不知道我在哪里做了错事。我是CherryPy的新手

我得到以下错误:

404 Not Found

The path '/titles.html' was not found.
In addition, the custom error page failed: 
ValueError: unsupported format character '"' (0x22) at index 1916

Traceback (most recent call last):
  File "/home/dev/fbenavides/lib/python2.7/site-packages/cherrypy/_cprequest.py", line 656, in respond
    response.body = self.handler()
  File "/home/dev/fbenavides/lib/python2.7/site-packages/cherrypy/lib/encoding.py", line 188, in __call__
    self.body = self.oldhandler(*args, **kwargs)
  File "/home/dev/fbenavides/lib/python2.7/site-packages/cherrypy/_cperror.py", line 386, in __call__
    raise self
NotFound: (404, "The path '/titles.html' was not found.")
Powered by CherryPy 3.2.4
global.conf

[global]
tools.encode.on:         True
tools.encode.encoding:   'utf-8'
tools.decode.on:         True
tools.trailing_slash.on: True
tools.staticdir.root:    server.HTTP_ROOT

log.screen:      True
log.error_file:  server.HTTP_ROOT + '/log/errors'
log.access_file: server.HTTP_ROOT + '/log/access'

server.socket_host: '0.0.0.0'
server.socket_port: 8080

error_page.404:  server.HTTP_ROOT + '/templates/404.html'
error_page.500:  server.HTTP_ROOT + '/templates/500.html'
config.conf

[/]
tools.staticdir.on:    True
tools.staticdir.debug: True
tools.staticdir.dir:   ''

[/img]
tools.staticdir.on:    True
tools.staticdir.debug: True
tools.staticdir.dir:   'img'

[/css]
tools.staticdir.on:    True
tools.staticdir.debug: True
tools.staticdir.dir:   'css'

[js]
tools.staticdir.on:    True
tools.staticdir.debug: True
tools.staticdir.dir:   'js'

[templates]
tools.staticdir.on:    True
tools.staticdir.debug: True
tools.staticdir.dir:   'templates'
server.py

# encode: utf-8
import os
import cherrypy
from datetime import date
from jinja2 import Environment, FileSystemLoader

HTTP_ROOT = os.path.abspath(os.path.dirname(__file__))
env       = Environment(loader=FileSystemLoader(os.path.join(HTTP_ROOT,'templates')))

conf = os.path.join(HTTP_ROOT,'config.conf')
glob = os.path.join(HTTP_ROOT,'global.conf')

class Root(object):
    @cherrypy.expose
    def index(self):
        tmpl = env.get_template('index.html')
        return tmpl.render(title='CherryPy - Pythonic WSGI OO HTTP WEB Framework')

@cherrypy.expose
def titles(self):
    today = date.today()
    tmpl = env.get_template('titles.html')
    return tmpl.render(launch1=(date(2014,2,18)-today).days)


root = Root()
root.titles = titles

if __name__ == '__main__':
    cherrypy.config.update(glob)
    cherrypy.tree.mount(root, "/", config=conf)
    cherrypy.engine.start()
    cherrypy.engine.block()

你的头衔就是这样

http://localhost/titles
不需要.html。这只与模板系统的物理路径有关。 但是,如果您确实要参考什么:

http://localhost/titles.html
然后把你的手柄换成这个

@cherrypy.expose
def titles_html(self):
    today = date.today()
    tmpl = env.get_template('titles.html')
    return tmpl.render(launch1=(date(2014,2,18)-today).days)


希望这有帮助

你的头衔就是这样

http://localhost/titles
不需要.html。这只与模板系统的物理路径有关。 但是,如果您确实要参考什么:

http://localhost/titles.html
然后把你的手柄换成这个

@cherrypy.expose
def titles_html(self):
    today = date.today()
    tmpl = env.get_template('titles.html')
    return tmpl.render(launch1=(date(2014,2,18)-today).days)


希望这有帮助

欢迎来到SO!现在发生的实际行为是什么?欢迎来到SO!现在发生的实际行为是什么?不客气。如果我的回答回答了您的问题,请将其标记为已接受的答案-谢谢!不客气。如果我的回答回答了您的问题,请将其标记为已接受的答案-谢谢!