我有一个名为投资组合的应用程序,我正在尝试绘制页面,以便最终得到一个始终存在的固定区域,称为"图库".我设置了它并且工作正常,但是图库项目被映射到page_type区域,例如'images','videos'等所以我希望我的root urls.py检测到这个然后发送正确的视图但是我无法弄清楚如何做到这一点
root urls.py
urlpatterns = patterns('',
(r'^(?P<page_type>[a-zA-Z0-9-]+)/$', include('portfolio.urls')),
(r'^gallery/', include('portfolio.urls')),
(r'^admin/(.*)', admin.site.root)
)
Run Code Online (Sandbox Code Playgroud)
投资组合urls.py
urlpatterns = patterns('portfolio.views',
#(r'^(?P<gallery_type>\d+)/$', 'index'),
(r'^page/(?P<page_number>[0-9]+)/$', 'index'),
(r'^(?P<page_category>[a-zA-Z0-9-]+)/$', 'category_index'),
(r'^(?P<page_category>[a-zA-Z0-9-]+)/page/(?P<page_number>[0-9]+)/$', 'category_index'),
(r'^$', 'index'),
)
Run Code Online (Sandbox Code Playgroud)
它甚至可能吗?如何?我找不到关于传递匹配表达式等的任何信息.
请帮忙.谢谢 :)
一位朋友指出我可以直接查看视图,而不是通过做这样的[code](r'^(?P [a-zA-Z0-9 - ] +)/这样的东西来通过应用程序urls.py (?P [a-zA-Z0-9 - ] +)/ $','portfolio.views.detail'),[/ code]
然后使用以下命令访问它:[code] def detail(request,page_type,page_name):... [/ code]
您必须移动(r'^gallery/', include('portfolio.urls')),BEFORE (r'^(?P<page_type>[a-zA-Z0-9-]+)/$', include('portfolio.urls')),因为页面类型正则表达式也将匹配'gallery /',并且模式在定义时按顺序显示!
| 归档时间: |
|
| 查看次数: |
593 次 |
| 最近记录: |