Obtener una variable de la URL en una ruta de Flask

Resuelto Ben J. asked hace 8 años • 2 respuestas

Tengo varias URL que comienzan landingpagey terminan con una identificación única. Necesito poder obtener la identificación de la URL para poder pasar algunos datos de otro sistema a mi aplicación Flask. ¿Cómo puedo obtener este valor?

http://localhost/landingpageA
http://localhost/landingpageB
http://localhost/landingpageC
Ben J. avatar Feb 04 '16 04:02 Ben J.
Aceptado

Esto se responde en el inicio rápido de los documentos.

Quiere una URL variable, que crea agregando <name>marcadores de posición en la URL y aceptando los nameargumentos correspondientes en la función de vista.

@app.route('/landingpage<id>')  # /landingpageA
def landing_page(id):
    ...

Lo más habitual es que las partes de una URL se separen con /.

@app.route('/landingpage/<id>')  # /landingpage/A
def landing_page(id):
    ...

Úselo url_forpara generar las URL de las páginas.

url_for('landing_page', id='A')
# /landingpage/A

También puede pasar el valor como parte de la cadena de consulta y obtenerlo de la solicitud , aunque si siempre es necesario, es mejor usar la variable como la anterior.

from flask import request

@app.route('/landingpage')
def landing_page():
    id = request.args['id']
    ...

# /landingpage?id=A
davidism avatar Feb 03 '2016 22:02 davidism

así el ejemplo

@app.route('/profile/<username>')
def lihat_profile(username):
    return "welcome to profile page %s" % username
perymerdeka avatar Sep 11 '2020 01:09 perymerdeka