Как я могу отображать содержимое MySQL, используя 2 цикла for, это flask jinja2Python

Программы на Python
Anonymous
Как я могу отображать содержимое MySQL, используя 2 цикла for, это flask jinja2

Сообщение Anonymous »

Я написал код в flask, в котором пользователям разрешено загружать изображения и вместе с изображением они могут задавать вопросы
для ответа на вопросы пользователей я создал форму, и при отправке формы вопросы пользователей сохраняются в базе данных
Я могу получить вопрос из базы данных и изображений и отобразить его в HTML с помощью jinja2.
Я хочу отобразить изображение, а под ним отобразить комментарий

Код: Выделить всё

from flask import Flask,request,render_template,redirect,url_for,session,logging,flash,send_from_directory
from flask_sqlalchemy import SQLAlchemy
import pymysql
pymysql.install_as_MySQLdb()
from flask_mail import Mail
app = Flask(__name__)
import os

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:@localhost/akashauto'
db = SQLAlchemy(app)
class Upload_tb(db.Model):
snob = db.Column(db.Integer, primary_key=True)
commentb = db.Column(db.String(20), unique=True, nullable=False)
datab = db.Column(db.String(20), unique=True, nullable=False)

APP_ROOT=os.path.dirname(os.path.abspath(__file__))
@app.route("/plcpro")
def problem():
return  render_template("plcpro.html")

@app.route("/uploader",methods=["GET","POST"])
def uploader():
target=os.path.join(APP_ROOT,"images/")
print(target)
if not os.path.isdir(target):  #if folder does not exist . create a folder
os.mkdir(target)
if(request.method=='POST'):
f=request.files['file1']
text=request.form.get('comment')
filename=f.filename
f.save(os.path.join(target,filename))
image=os.listdir('./images')
existing_entry=Upload_tb.query.filter_by(commentb=text).first()
if existing_entry:
# flash('Email already exist','danger')
return redirect(url_for("plcove"))
new_entry=Upload_tb(commentb=text,datab=filename)
db.session.add(new_entry)
db.session.commit()
question=Upload_tb.query.all()
return render_template('ans.html',file=filename,text=text,image=image,question=question)
@app.route("/uploader/")
def send_img(filename):
return send_from_directory("images",filename)

Это код формы

Код: Выделить всё

      

Enter Name:



Ask Your Question: 






отобразить код

Код: Выделить всё

  {% for image_name in image %}
[*]
[img]{{url_for([/img]
{%endfor%}
{% for user in question %}
[*]Comment - {{user.commentb}}

{% endfor %}
Я получаю следующий результат:
введите здесь описание изображения

Отображаются первые изображения, а затем комментарии я хочу отобразить изображение и комментарий к нему вместе, могу ли я внести некоторые изменения в цикл for? Любая помощь будет оценена

Подробнее здесь: https://stackoverflow.com/questions/615 ... ask-jinja2

Вернуться в «Python»