我一直在关注Flask提供的教程。我试图改变一些事情并使其符合词汇表的标准。
我怀疑我的问题在于我的flaskr.py文件中的这行代码:
cur = db.execute('select title, text from entries order by id desc')
我之所以怀疑这是因为当我弄乱它时会破坏一切。同样,当我试图“整理”它所做的一切时,哦,并且它说按顺序下降...这主要是为什么。
我尝试的是:
@app.route('/order', methods=['POST'])
def order_entry():
entries.sort()
return entries
这可能是粗俗的,有点傻,但我对编程特别陌生。我在我的代码中找不到任何其他位置的条目。
我已经找到了按字母顺序组织字典的不同方法,但没有太多的运气使其工作。你可以说。
答案 0 :(得分:1)
假设this是你正在关注的Flask教程,我认为你的功能缺少一些东西。 entries
是某种全局变量,还是只删除了创建它的部分?我已经尝试将您的代码与教程中的一个示例结合起来,并添加了一些注释。
@app.route('/order', methods=['POST'])
def order_entry():
# the following line creates a 'cursor' which you need to retrieve data
# from the database
cur = g.db.execute('select title, text from entries order by id desc')
# the following line uses that cursor ("cur"), fetches the data,
# turns it into a (unsorted) list of dictionaries
entries = [dict(title=row[0], text=row[1]) for row in cur.fetchall()]
# let's sort the list by the 'title' attribute now
entries = sorted(entries, key=lambda d: d['title'])
# or if you prefer, you could say: "entries.sort(key=lambda d:d['title']"
# return the template with the sorted entries in
return render_template('show_entries.html', entries=entries)
现在,我根本不认识Flask,但我认为这是你想要做的gist
。
你可能想要阅读一些Python教程(在处理Flask之前),因为有一些基本概念,一旦你掌握,我认为会让其他一切变得更容易。