Como restringir um url para apenas um modo de exibição no django urls
-
21-12-2019 - |
Pergunta
Eu estou enfrentando problema em urls.Meu nome do projeto é o Estoque e o meu nome do aplicativo é Stock_app,
Estoque urls.py:
urlpatterns = patterns('',
url(r'^goc/', include('stock_app.urls')),
url(r'^goc_range/', include('stock_app.urls')),
)
na minha stock_app urls.py
urlpatterns = patterns('stock_app.views',
url(r'^(\w+)/(\d+)/$', 'goc'),
url(r'^(\w+)/(\d+)/(\d+)/$', 'goc_range'),
)
eu estou enfrentando um problema,aqui, sempre que o usuário visita goc/ e goc_range/ ambos estão tendo acesso a urls no stock_app.urls ,
quero dizer goc/ é para goc função, goc_range/ é para goc_range função.
eu quero como o seguinte de acesso
goc/ --> ir para apenas url(r'^(\w+)/(\d+)/$', 'goc'), goc_range/ --> ir para apenas url(r'^(\w+)/(\d+)/$', 'goc_range'),
sempre que o usuário dá goc/nome/data, ele deve ir para apenas url(r'^(\w+)/(\d+)/$', 'goc'), e também goc_range/nome/data/data, ele deve ir para apenas url(r'^(\w+)/(\d+)/$', 'goc_range'),
ajuda-me
Solução
Seus padrões de URL não são corretas, mudar os padrões em Stock urls.py:
urlpatterns = patterns('',
url(r'^', include('stock_app.urls')),
)
e stock_app urls.py
urlpatterns = patterns('stock_app.views',
url(r'^goc/(\w+)/(\d+)/$', 'goc'),
url(r'^goc_range/(\w+)/(\d+)/(\d+)/$', 'goc_range'),
)
Basicamente, os principais padrões de arquivo inclui os padrões do segundo arquivo, então eles só são necessários uma vez.