2010-11-23 11 views
0

Ich habe eine App namens Portfolio und ich versuche, die Seiten zu ordnen, so dass ich am Ende mit einem festen Bereich, der immer existiert namens "Galerie" endet. Ich habe das eingerichtet und es funktioniert gut, aber die Galerie-Elemente sind page_type Bereiche wie "Bilder", "Videos" etc zugeordnet, so dass ich meine root urls.py dies erkennen wollte und dann t die richtige Ansicht senden, aber ich kann nicht herausfinden, wie es urls.pyDjango urls.py Problem übergeben Variablen

Wurzel tun

urlpatterns = patterns('', 

(r'^(?P<page_type>[a-zA-Z0-9-]+)/$', include('portfolio.urls')), 
(r'^gallery/', include('portfolio.urls')), 

(r'^admin/(.*)', admin.site.root) 
) 

Portfolio 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'), 
) 

Ist es überhaupt möglich? Und wie? Ich kann keine Informationen über das Übergeben der passenden Ausdrücke usw. finden.

Hilfe. Thanks :)

Ein Freund hat darauf hingewiesen, dass ich direkt auf die Ansichten gehen könnte, anstatt über die Apps urls.py gehen durch so etwas wie dieses [code] (r '^ (? P [a-zA tun -Z0-9 -] +)/(? P [a-zA-Z0-9 -] +)/$ ',' portfolio.views.detail '), [/ code]

und dann darauf zugreifen Verwendung: [code] def Detail (Anfrage, PAGE_TYPE, page_name): ... [/ code]

+0

Bitte bereinigen Sie Ihre Frage die Tags, die Sie verwendet haben, sind falsch – zsquare

+0

Ich habe den Code aufgeräumt, aber brauche mehr Informationen, bevor ich die Frage beantworten kann. Wie sollen deine URLs aussehen? Was werden sie tun. –

+0

Daniel, kann ich nur sagen, du rockst! – zsquare

Antwort

5

Sie haben (r'^gallery/', include('portfolio.urls')), VOR (r'^(?P<page_type>[a-zA-Z0-9-]+)/$', include('portfolio.urls')), weil t bewegen Der Seitentyp regex passt auch zu 'gallery /' und die Muster werden in der Reihenfolge wie sie definiert sind angewendet!

+0

Prost dude. Ich werde das höher schieben: D Ich schätze Admin sollte auch höher sein? – Designer023

+0

Ja, weil '[a-zA-Z0-9 -] +' mit jeder alphanumerischen Kombination (auch 'admin') übereinstimmt. –

Verwandte Themen