(Flask)如何在 fetchall 之后修改列表

(Flask) How to modify list after a fetchall

(对不起,我的英语很糟糕!... ^^) 大家好

我在我的烧瓶中做了一个 def 来保存我的 fetchall 列表。 但是我需要在我的列表中添加一个参数来做一些事情。 我需要添加列表[4]

但是,我不知道该怎么做...

# Fonction récupération des comptes patients
def get_accountpatient():
    var = "SELECT id, Nom, Prenom, Tel FROM `users` WHERE Privilege = 'patient'"
    try:
        cur = bdd_login()
    except pymysql.Error as e:
        return session_out(e)
    cur.execute(var)
    list = cur.fetchall()
    cur.close()
    print(list)
    return list

list return : ((1, 'BLOQUIAU', 'Thomas', '0669696969'), (2, 'PARAT', 'Clement', '0669696969'), (24, 'Gerez', 'Quentin', '0642181185'))

Python 另一个函数中的代码调用 get_accountpatient()

return render_template('user_manage.html', **templateData, accounts=get_accountpatient(), sidebar=7, usermanage_div=2)

HTML代码

<thead>
  <tr>
    <th>ID</th>
    <th>Nom</th>
    <th>Prénom</th>
    <th>Téléphone</th>
    <th>Administré par {{prenom_user}} {{name_user}}</th>
  </tr>
</thead>
<tbody>
  {% for list in accounts %}
    <tr>
        <td>{{ list[0] }}</td>
        <td>{{ list[1] }}</td>
        <td>{{ list[2] }}</td>
        <td>{{ list[3] }}</td>
        <td>{{ list[4] - **I NEED TO ADD THIS LINE** }}</td>
    </tr>
  {% endfor %}
</tbody>

我希望这是可能的

((1, 'BLOQUIAU', 'Thomas', '0669696969', 'Oui'), (2, 'PARAT', 'Clement', '0669696969', 'Oui'), (24, 'Gerez', 'Quentin', '0642181185', 'Oui'))

此致

最有效的方法是在 SQL 查询中添加常量值:

sql = """SELECT id, Nom, Prenom, Tel, 'Oui' As Admin 
         FROM `users` WHERE Privilege = 'patient'
      """
...
cur.execute(sql)

如果您需要动态值,请将其作为参数传递。下面假设您的 DB-API 使用 %s 作为参数占位符(其他人可能使用 qmarks ?):

sql = """SELECT id, Nom, Prenom, Tel, %s As Admin 
         FROM `users` WHERE Privilege = 'patient'
      """
...
myvar = 'Oui'
cur.execute(sql, (myvar,))    # PARAMS MUST BE PASSED IN TUPLE OR LIST (NOT SINGLE VALUES)