python - 如何在 html 表中编辑从数据库中获取的数据? flask ,Jinja2

标签 python html database flask jinja2

恐怕标题没有我想要的那么清楚,但我会尽量解释得更详细:

我有一个数据库表:

class Task(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    task = db.Column(db.String(10),index=True)
    descr = db.Column(db.String(300),index=True,unique=True)
    docs = db.relationship('Doc', backref='Task', lazy='dynamic'

这个查询 docs = Task.query.all()

和一些带有循环的 html 页面:

<table>
{% for doc in docs %}
<tr><td>{{doc.id}}</td><td>{{doc.task}}</td><td>{{doc.descr}}</td><td> 
{% endfor %} 
</table>  

这一切都很好,看起来像普通的 html 表,其中填充了来 self 的数据库 (sqlite) 的数据。像这样,但它只是另一张 table ,没关系。 enter image description here 有时数据有缺失值,就像这张照片中的最后一列,这是正常的,因为我想稍后再填充它。我怎样才能实现这样的功能?我已经尝试了很多东西.. 问题是我不知道如何从当前编辑的行中获取其他信息以对数据库进行正确记录。

例如,让我们取第二行并将一些数据添加到最后一列 -> 提交。现在我必须以某种方式从这一行“234”或“sfdfs”中获取

edit_ task = Task.query.filter_by(task=234).first() or 
Task.query.filter_by(descr=sfdfs).first() 

获取此查询的结果并简单地将新信息添加到未填充的列然后提交。

我可以制作不同的表格、请求和其他东西,但我就是不明白如何以适当的方式制作这个功能?我应该使用 JS 从模板中的表中获取信息,而不是将其传输到表单而不是 python/route 函数吗?或者有另一个决定?可能这个 html 表必须是某种 WTFotms table.widget 形式?任何想法将不胜感激。谢谢

最佳答案

http://www.blog.pythonlibrary.org/2017/12/14/flask-101-adding-editing-and-displaying-data/我设法找到的唯一方法。只是不要用 cycling 手动创建 html-table,flask_table 中的 Table Class 可以为您创建它,并且还有机会创建编辑链接。

关于python - 如何在 html 表中编辑从数据库中获取的数据? flask ,Jinja2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51687362/

相关文章:

javascript - 我想创建一个循序渐进的订单,这就是我目前所拥有的

mysql - 网站的两个用户之间的对话类型收件箱消息

python - Python中的自动重启系统

Jquery 悬停影响所有 Div

python - 用于解包具有任意位长度字段的字节编码消息的建议 "pythonic way"是什么?

javascript - 如何将所有数据序列化为html形式

MySQL对表的每一行重复操作

php - PHP 的 SQL 插入问题

python - 自引用表 [SQLAlchemy/Alembic] 中的外键不明确

Python:父类实例的子实例类