取最后 20 条记录并显示最后的寄存器

Takes last 20 record and show last register

所以我有一个问题,我不知道怎么去找他。

@app.route('/',methods=['GET', 'POST'])
def index():
    if current_user.is_authenticated:
        current_user.update_on = datetime.utcnow()
        db.session.add(current_user)
        db.session.commit()
    username = db.session.query(User.username,User.avatar).order_by(User.username,User.avatar).limit(20).all()
    nicks = [x[0]for x in username]
    base = 'http://localhost:5000/profil'
    urls = ['{}/{}'.format(base,n)for n in nicks]
    return render_template("index.html",user = username,urls=urls,nicks=nicks)

这是我在 app.py 中的代码,所以我想从 mysql 中获取最后 20 条记录,并在 html 中显示最后的记录。最后注册的用户将首先显示,prelast 是第二...但在 html 中显示随机用户。
我的 HTML 文件:

<a href="{{urls[0] }}"><img class="img-responsive" src="{{url_for('static',filename='upload/'+ user[0].avatar|resize('40x40'))}}" alt="{{nicks[0]}}"></a>
        <a href="{{urls[1] }}"><img class="img-responsive" src="{{url_for('static',filename='upload/'+ user[1].avatar|resize('40x40'))}}" alt="{{nicks[1]}}"></a>
        <a href="{{urls[2] }}"><img class="img-responsive" src="{{url_for('static',filename='upload/'+ user[2].avatar|resize('40x40'))}}" alt="{{nicks[2]}}"></a>

我不知道如何修复这个错误,有人可以帮助我吗?或者只是给我一个提示?我上周开始学习编程

我遇到的另一个问题是 sqlalchemy.exc.OperationalError (2013, 'Lost connection to MySQL server during query') 它是快速结束连接,比如 2 分钟并看到一个错误

DATABASE_URI = 'mysql://{}:{}@{}:{}/kamilos98'.format(config['user'], config['password'],config['host'], config['port'])
app.config['SQLALCHEMY_DATABASE_URI'] = DATABASE_URI
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True

这个:

username = db.session.query( \
    User.username,User.avatar).order_by(User.username,User.avatar).limit(20).all()

按用户名和头像下单。将其更改为:

username = db.session.query( \
    User.username,User.avatar).order_by(User.update_on.desc(),User.username).limit(20).all()

改为按最后更新时间排序。