Obtener una variable de la URL en una ruta de Flask
Tengo varias URL que comienzan landingpage
y 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
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 name
argumentos 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_for
para 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
así el ejemplo
@app.route('/profile/<username>')
def lihat_profile(username):
return "welcome to profile page %s" % username