取最后 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()
改为按最后更新时间排序。
所以我有一个问题,我不知道怎么去找他。
@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()
改为按最后更新时间排序。