【问题标题】:Django: When doing an include of URL's, should I specify project.app or just appDjango:在包含 URL 时,我应该指定 project.app 还是只指定 app
【发布时间】:2010-11-19 00:25:51
【问题描述】:

当在项目的urls.py 中包含应用的 URL 时,我的编码伙伴会这样做:

('^stops/', include('stops.urls'))

但是,Django documentation 指定以下语法:

('^clients/', include('project_name.app_name.urls'))

他的方法奏效了。是否有理由指定项目名称?

【问题讨论】:

    标签: python django django-urls


    【解决方案1】:

    这取决于您的 PYTHONPATH 设置以及您的项目和应用的结构。

    我们有很多很多项目。每个都有几个应用程序。都在我们的PYTHONPATH,所以项目名称是必不可少的。

    如果你只有一个项目,而顶层项目目录在你的PYTHONPATH,那么每个应用都可以单独解析,不能使用项目名。

    【讨论】:

      【解决方案2】:

      这还取决于应用程序是在您的项目中,还是一个可重用的应用程序。

      我为每个项目都有一个新的 virtualenv,并为每个应用程序使用一个单独的 mercurial 存储库。然后将它们安装到系统路径中(以可编辑形式用于开发,或以不可编辑形式用于部署),这意味着我在PYTHONPATH 上有<appname>

      【讨论】:

        【解决方案3】:

        如果在你运行的 shell 上

        导入这个

        你会看到有很多 python ''显式优于隐式'',因此这就是指定项目名称的原因。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-07-01
          • 2023-01-19
          • 2020-03-26
          • 1970-01-01
          • 2020-06-23
          • 2011-08-30
          • 2014-01-20
          • 2011-12-16
          相关资源
          最近更新 更多