python - create - request form flask
render_template con mĂșltiples variables (2)
Puede pasar múltiples parámetros a la vista.
Puedes pasar toda tu variable local
@app.route(''/'')
def index():
content = """
teste
"""
user = "Hero"
return render_template(''index.html'', **locals())
o simplemente pasa tus datos
def index() :
return render_template(''index.html'', obj = "object", data = "a223jsd" );
Estoy usando Flask (como marco) y MongoDB (como servidor de base de datos). En este momento, todo lo que puedo hacer es pasar un argumento que obtuve de la base de datos:
@app.route(''/im/'', methods=[''GET'', ''POST''])
def im_research(user=None):
error = None
if request.method == ''POST'':
if request.form[''user'']:
user = mongo.db.Users.find_one_or_404({''ticker'':request.form[''user'']})
return redirect(url_for(''im_user'',user= user) )
else:
flash(''Enter a different user'')
return redirect(url_for(''im''))
if request.method == ''GET'':
return render_template(''im.html'', user= None)
¿Cómo puedo pasar varias variables de la base de datos? Por ejemplo: en mi base de datos Mongo: tengo estas cosas en mi base de datos y me gustaría pasarlas todas a mi plantilla.
{
users:''xxx''
content:''xxx''
timestamp:''xxx''
}
¿Es posible hacer eso usando Flask?
return render_template(''im.html'', user= None, content = xxx, timestamp = xxx)
Puedes pasar tantas variables como necesites. La api
extracto:
flask.render_template (template_name_or_list, ** context) Representa una plantilla de la carpeta de plantillas con el contexto dado.
Parámetros: template_name_or_list: el nombre de la plantilla que se va a representar, o un iterable con nombres de plantilla, el primero existente se representará como contexto: las variables que deberían estar disponibles en el contexto de la plantilla.