默认路由不工作

4 投票
1 回答
620 浏览
提问于 2025-04-15 13:36

我正在使用Pylons的标准路由模块,想为我网站的主页设置一个默认路由。

我按照文档里的说明和这个链接 http://routes.groovie.org/recipes.html 操作,但当我尝试访问 http://127.0.0.1:5000/ 时,只看到“欢迎使用Pylons”的默认页面。

我的config/routing.py文件看起来是这样的:

from pylons import config
from routes import Mapper

def make_map():
    """Create, configure and return the routes Mapper"""
    map = Mapper(directory=config['pylons.paths']['controllers'],
             always_scan=config['debug'])
    map.minimization = False

    map.connect('/error/{action}', controller='error')
    map.connect('/error/{action}/{id}', controller='error')

    # CUSTOM ROUTES HERE
    map.connect( '', controller='main', action='index' )
    map.connect('/{controller}/{action}')
    map.connect('/{controller}/{action}/{id}')

    return map

我还尝试过

map.connect( '/', controller='main', action='index' )

并且使用 http://127.0.0.1:5000/homepage/ 进行访问。

map.connect( 'homepage', controller='main', action='index' )

但是都没有效果。我知道我的配置文件在重新加载,因为我用

paster serve --reload development.ini

来启动服务器。

系统信息:

$ paster --version
PasteScript 1.7.3 from /Library/Python/2.5/site-packages/PasteScript-1.7.3-py2.5.egg (python 2.5.1 (r251:54863, Feb  6 2009, 19:02:12))

1 个回答

9

你需要删除静态页面(myapp/public/index.html)。因为在middleware.py的最后,静态文件的优先级比较高,所以会影响其他设置。

撰写回答