SORU
3 Mayıs 2011, Salı


Şişeyi destek URL yönlendirme düzenli ifadeler mu?

Şişeyi tamsayı, kayan nokta ve yol dönüştürücüler olduğunu biliyorum, ama geliştirdiğimiz bu uygulama URLs daha karmaşık desenler vardır.

Düzenli ifadeler, Django gibi kullanabileceğimiz bir yol var mı?

CEVAP
3 Mayıs 2011, Salı


Olsa bile, Armin beat bana yumruk ile kabul edilen bir cevap göstereceğimi düşünmüştüm kısaltılmış bir örnek nasıl hayata bir düzenli ifade eşleştirici içinde Matara diye isteyen bir çalışma örneği bu nasıl yapılabilir.

from flask import Flask
from werkzeug.routing import BaseConverter

app = Flask(__name__)

class RegexConverter(BaseConverter):
    def __init__(self, url_map, *items):
        super(RegexConverter, self).__init__(url_map)
        self.regex = items[0]


app.url_map.converters['regex'] = RegexConverter

@app.route('/<regex("[abcABC0-9]{4,6}"):uid>-<slug>/')
def example(uid, slug):
    return "uid: %s, slug: %s" % (uid, slug)


if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0', port=5000)

200 ile dönmelidir bu URL: http://localhost:5000/abc0-foo/

404 ile bu URL gerektiği dönecektir: http://localhost:5000/abcd-foo/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eric Magidson

    Eric Magidso

    4 Ocak 2009
  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009