【问题标题】:What's the best way to map the main urls in a django project?在 django 项目中映射主要网址的最佳方法是什么?
【发布时间】:2010-09-30 11:17:13
【问题描述】:

我有一个包含一些应用程序的 django 项目。主要的 urls.py 包括我启用的应用程序中的 urls.py,一切都很好。

现在我想配置项目,这样当您转到http://testsite/ 时,您将获得与您转到http://testsite/app/ 时相同的页面。

我可以通过在项目 urls.py 中复制应用程序 urls.py 中的相应行来做到这一点,但这感觉很脏。

有人知道更好的方法吗?

【问题讨论】:

    标签: django django-urls


    【解决方案1】:

    重定向是可行的方法,因为您不希望同一资源有多个规范 URL(浪费 Google 汁液)。理想情况下,您应该在尽可能靠近堆栈边缘的地方进行重定向,以节省服务器资源。所以你可以做一个 Django redirect_to urlconf 条目,但你最好使用 Apache 或 nginx 或 insert-your-webserver-here 重定向,所以初始请求根本不必打 Django。

    【讨论】:

      【解决方案2】:

      设置一个从第一个url到第二个url的redirect_to,即:

      from django.conf.urls.defaults import patterns, url, include
      from django.views.generic.simple import redirect_to
      
          urlpatterns = patterns('',
              # Example:
              url(r'^$', redirect_to, {'url':'/app/'}),
              url(r'^app/', include('app.urls')),
              # ...
          )
      

      HTH

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-16
        • 2015-09-24
        • 1970-01-01
        • 2010-10-21
        • 1970-01-01
        • 1970-01-01
        • 2010-09-09
        • 1970-01-01
        相关资源
        最近更新 更多