【问题标题】:How to add poll code to the django-cms url.py file?如何将轮询代码添加到 django-cms url.py 文件?
【发布时间】:2021-08-07 19:26:46
【问题描述】:

我是 Django-cms 的新手,但我无法将投票 URL 代码添加到 url.py 文件中。我遵循 Django-cms 文档中的每一步,但我仍然无法成功,任何人都可以帮助我。

这是 Django-cms 的文档:

integrating_applications

" 使用 pip 从其 GitHub 存储库安装应用程序: pip install git+http://git@github.com/divio/django-polls.git#egg=polls 让我们将此应用程序添加到我们的项目中。在项目的 settings.py 中将“polls”添加到 INSTALLED_APPS 的末尾(参见关于排序的 INSTALLED_APPS 设置的注释)。

在项目的 urls.py 中的 urlpatterns 中添加投票 URL 配置:

urlpatterns += i18n_patterns(
    re_path(r'^admin/', include(admin.site.urls)),
    re_path(r'^polls/', include('polls.urls')),
    re_path(r'^', include('cms.urls')),
)

请注意,它必须包含在 django CMS URL 行之前。 django CMS 的 URL 模式需要放在最后,因为它会“吞噬”任何尚未与之前的模式匹配的内容。 "

我已将设置中的“投票”添加到安装应用程序代码中。但 - - 我的问题是将此代码放在哪里或如何放在 urls.py 文件中。 -- 我的 urls.py 文件如下所示:

from cms.sitemaps import CMSSitemap
from django.conf import settings
from django.conf.urls.i18n import i18n_patterns
from django.conf.urls.static import static
from django.contrib import admin
from django.contrib.sitemaps.views import sitemap
from django.urls import include, path

admin.autodiscover()



urlpatterns = [path("sitemap.xml", sitemap, {"sitemaps": {"cmspages": CMSSitemap}}),]

urlpatterns += i18n_patterns(
    path("admin/", admin.site.urls), 
    path("", include("cms.urls"))
    )

# This is only needed when using runserver.
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

【问题讨论】:

  • 请将复制粘贴的文档标记为引用,并将其与您自己的代码和问题分开。

标签: python django


【解决方案1】:
urlpatterns += i18n_patterns(
    path("admin/", admin.site.urls),
    path("polls/", include("polls.urls")),
    path("", include("cms.urls"))
    )

它将包括在“mywebsite/polls/”URL 下的其他polls/urls.py 文件中列出的所有子URL。这是组织路线的标准 Django 方式:每个应用程序。

【讨论】:

  • 为什么要从路径中删除re_?
  • path 和 re_path 是集成路径的两种不同方法。 re_path 使用正则表达式,因此您可以创建有关 URL 的更复杂的规则。使用任何你想要的,但如果你使用 re_path 你必须在里面写一个正则表达式。
  • 显示此错误不起作用,请帮助老板.. ImportError: cannot import name 'version' from 'cms' (C:\Users\DP\AppData\Local \Programs\Python\Python38\lib\site-packages\cms_init_.py)
猜你喜欢
  • 2015-01-18
  • 2016-01-05
  • 2021-11-23
  • 2012-04-08
  • 2014-08-12
  • 1970-01-01
  • 2012-07-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多