Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:应用程序根目录后面的点url?_Python_Django_Django Urls - Fatal编程技术网

Python Django:应用程序根目录后面的点url?

Python Django:应用程序根目录后面的点url?,python,django,django-urls,Python,Django,Django Urls,我正在阅读Django的教程(),我正在添加视图和URL 在这个演示应用程序中,他们为投票添加子视图,例如,/polls/34/,以进入第34次投票。引用教程中的内容: 当有人从您的网站请求页面时,例如,“/polls/34/”,Django将加载mysite.urlPython模块,因为它由ROOT\u URLCONF设置指向。它查找名为urlpatterns的变量,并按顺序遍历正则表达式。在“^polls/”中找到匹配项后,它将删除匹配文本(“polls/”),并将剩余文本-“34/”)发送

我正在阅读Django的教程(),我正在添加视图和URL

在这个演示应用程序中,他们为投票添加子视图,例如,
/polls/34/
,以进入第34次投票。引用教程中的内容:

当有人从您的网站请求页面时,例如,“
/polls/34/
”,Django将加载
mysite.url
Python模块,因为它由
ROOT\u URLCONF
设置指向。它查找名为urlpatterns的变量,并按顺序遍历正则表达式。在
“^polls/”
中找到匹配项后,它将删除匹配文本(“
polls/
”),并将剩余文本-“
34/
”)发送到“polls.url”URLconf进行进一步处理。在那里,它匹配
r'^(?P[0-9]+)/$”
,从而调用
detail()
视图,如下所示:

我的问题如下:

假设你有一个与你的应用程序相关的视图,但是url(以应用程序名称开头)没有新视图本身那么有意义。如何使视图(应用程序的一部分)从新路径名开始

这可能会让人困惑,所以这里有一个例子

假设您有一个应用程序(decks),供decks用户使用一组卡片制作。然后/deck/regex会将您带到给定的deck。如果有人想在牌组中查看有关某张牌的更多信息,那么/decks/cards/regex就没有什么意义了,因为一张牌可以在多个牌组中


这不是一个完美的例子,但我认为它突出了我正在努力做的事情。

你所说的很容易做到,但没有做到,因为它会导致很多关于路由的混乱

谈谈你的例子。假设您在一个名为decks的应用程序中,根URL.py文件如下:

from django.conf.urls import url,include
from django.contrib import admin
from Decks import views as deckviews


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'/cards/regex^$',deckviews.get_card_information),
    url(r'^decks/',include('deckviews.urls')),

 ]
Decks应用程序中的URL.py可以是:

from django.conf.urls import url,include
import views

urlpatterns = [
    url(r'^regex/',views.generate_decks)

 ]
下面是一个生成卡片组的示例,decks/regex从decks应用程序的url.py中调用generate random deck,同时您可以获得所需的卡片/regex,该卡片/regex指向decks应用程序中的视图,但仍然具有您想要的url

通过这种方式,您可以将任何url路由到任何函数,这就是django的优点。但这很少被使用,因为当应用程序变得更大、更复杂时,它会造成很多混乱


希望这有帮助。干杯

你所说的很容易做到,但却没有做到,因为这会在路由方面造成很多混乱

谈谈你的例子。假设您在一个名为decks的应用程序中,根URL.py文件如下:

from django.conf.urls import url,include
from django.contrib import admin
from Decks import views as deckviews


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'/cards/regex^$',deckviews.get_card_information),
    url(r'^decks/',include('deckviews.urls')),

 ]
Decks应用程序中的URL.py可以是:

from django.conf.urls import url,include
import views

urlpatterns = [
    url(r'^regex/',views.generate_decks)

 ]
下面是一个生成卡片组的示例,decks/regex从decks应用程序的url.py中调用generate random deck,同时您可以获得所需的卡片/regex,该卡片/regex指向decks应用程序中的视图,但仍然具有您想要的url

通过这种方式,您可以将任何url路由到任何函数,这就是django的优点。但这很少被使用,因为当应用程序变得更大、更复杂时,它会造成很多混乱


希望这有帮助。干杯

我为你准备了一些URL: 第一:

这个大写字母现在是您的代码:

# So you can change is to:
urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^', include('table.urls',namespace="table")),
]
然后:在tables.urls.py中,您可以随心所欲:

urlpatterns = [ url(r'^$', views.index, name='index'),
     url(r'^decks/(?P<pk>.*)$', views.decksView, name='decksView'),
     url(r'^card/(?P<pk>.*)$', views.cardView, name='cardView'),
]
urlpatterns=[url(r'^$',views.index,name='index'),
url(r“^decks/(?P.*)$”,views.decksView,name='decksView'),
url(r'^card/(?P.*)$,views.cardwiew,name='cardwiew'),
]

我为您准备了一些URL: 第一:

这个大写字母现在是您的代码:

# So you can change is to:
urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^', include('table.urls',namespace="table")),
]
然后:在tables.urls.py中,您可以随心所欲:

urlpatterns = [ url(r'^$', views.index, name='index'),
     url(r'^decks/(?P<pk>.*)$', views.decksView, name='decksView'),
     url(r'^card/(?P<pk>.*)$', views.cardView, name='cardView'),
]
urlpatterns=[url(r'^$',views.index,name='index'),
url(r“^decks/(?P.*)$”,views.decksView,name='decksView'),
url(r'^card/(?P.*)$,views.cardwiew,name='cardwiew'),
]

您可以自由选择如何构造端点。该结构可以是平面结构或嵌套结构,也可以是智能结构或非智能结构,URL上允许使用接近和字符,不带或带多个参数。它应该正好适合您的项目。您可以自由地构造端点。该结构可以是平面结构或嵌套结构,也可以是智能结构或非智能结构,URL上允许使用接近和字符,不带或带多个参数。它应该正好适合你的项目。