【问题标题】:Python Pyramid - URL Dispatch and Traversal issue with shash (/)Python Pyramid - 带有 shash (/) 的 URL 调度和遍历问题
【发布时间】:2013-01-07 22:33:18
【问题描述】:

我有一个关于 URL Dispatch 或 Traversal 的初学者问题。我想做的是使用 Mako 渲染器来渲染我的视图。所以我有这个文件夹/includes/,所有的html、css和javascript都在其中。这是我的 Pyramid 主要代码:

from pyramid.config import Configurator

def main(global_config, **settings):
    config = Configurator(settings=settings)
    config.add_static_view('includes', 'includes', cache_max_age=3600)
    config.add_renderer(".html", "pyramid.mako_templating.renderer_factory")  
    config.add_route('home', '/')
    config.scan()
    return config.make_wsgi_app()

以下是我的观点:

@view_config(route_name='home', renderer='index.html')
def my_view(request):
    return {'name':'Netherdrake'}

@view_config(name = 'login', renderer='login.html')
def login(request):
    return {'name':'Netherdrake'}

问题是,当我访问 ip:port/login 时,站点工作正常,但是当我尝试 ip:port/login/ 时,css、javascript 和图像不起作用。原因是,我的绝对路径失效了。

这是我的 login.html sn-p(真的是 mako 模板),而没有 /:

 <link href="includes/css/twitter/bootstrap.css" rel="stylesheet">
  <link href="includes/css/base.css" rel="stylesheet">
  <link href="includes/css/twitter/responsive.css" rel="stylesheet">
  <link href="includes/css/jquery-ui-1.8.23.custom.css" rel="stylesheet">
  <script src="includes/js/plugins/modernizr.custom.32549.js"></script>

这是当我要登录/路径时(在这种情况下站点已损坏,没有 css、图像、js...):

  <link href="includes/css/twitter/bootstrap.css" rel="stylesheet">
  <link href="includes/css/base.css" rel="stylesheet">
  <link href="includes/css/twitter/responsive.css" rel="stylesheet">
  <link href="includes/css/jquery-ui-1.8.23.custom.css" rel="stylesheet">
  <script src="includes/js/plugins/modernizr.custom.32549.js"></script>

login.html 也在 /includes 中。

我怎样才能解决这个问题,让它在两条路径下都能正常工作,带斜线和不带斜线?我尝试了traveral和url dispatch,两者的问题都是一样的。

【问题讨论】:

    标签: python url pyramid traversal


    【解决方案1】:

    所有的 href 都应该以斜杠开头。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-01
      • 1970-01-01
      • 2018-08-27
      • 1970-01-01
      相关资源
      最近更新 更多