1

How to get page id by URL in Flask?

http://localhost/page34
http://localhost/page35

I want the word "page" to be fixed with a letter or number next to it representing the page, how do I do this?

C132
  • 103
  • 1
  • 6

1 Answers1

2

Adapted from this answer. You can also use this example from the documentation of Werkzeug.

from flask import Flask
from werkzeug.routing import BaseConverter

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

app = Flask(__name__)
app.url_map.converters['regex'] = RegexConverter

@app.route('/page<regex("\d+"):page_id>/')
def page(page_id):
    return f"Page ID: {page_id}"

if __name__ == '__main__':
    app.run()

enter image description here

Corralien
  • 109,409
  • 8
  • 28
  • 52