Frage

Ich bin mit dem Tornado-Rahmen (Python). Ich habe die Sluggable URLs arbeiten. Aber ich habe drei verschiedene Einträge im URL-Dispatcher. Ich frage mich, wenn jemand könnte mich in eine Linie verwandeln helfen.

Das ist, was ich habe:

(r"/post/([0-9]+)/[a-zA-Z0-9\-]+", SpotHandler),
(r"/post/([0-9]+)/", SpotHandler),
(r"/post/([0-9]+)", SpotHandler),

Ich will es so, dass die folgenden URLs alle gehen an der gleichen Stelle.

http://domain.com/post/14

http://domain.com/post/14/

http://domain.com / Post / 14 / any-Text-it-tut-Materie-what-it-is

War es hilfreich?

Lösung

(r "/ Post / ([0-9] +) /? [A-zA-Z _] *", SpotHandler)

"?" Mittel können Vorigen es sein, aber muss nicht sein. "*" Bedeutet null oder mehr

Andere Tipps

r"/post/([0-9]+)(?:/[a-zA-Z_-]+|/)?"
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top