簡體   English   中英

如何編輯從 html 表中的 db 獲取的數據? Flask, Jinja2

[英]How can I edit data fetched from db in html table ? 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 表,其中填充了來自我的數據庫(sqlite)的數據。 像這樣,但它只是另一張桌子,沒關系。 在此處輸入圖像描述 有時數據有缺失值,例如這張圖片中的最后一列,這很正常,因為我想稍后再填寫。 我怎樣才能實現這樣的功能? 我已經嘗試了很多東西。問題是我不知道如何從當前編輯的行中獲取另一個信息以正確記錄到數據庫。

例如,讓我們取第二行並在最后一列添加一些數據 -> 提交。 現在我必須以某種方式從這一行獲取“234”或“sfdfs”來制作

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

獲取此查詢的結果,只需將新信息添加到未填充的列,然后提交。

我可以制作不同的 forms、請求和其他東西,但我只是不明白如何以適當的方式制作這個 function? 我應該使用 JS 從模板中的表中獲取信息,而不是將其傳輸到表單而不是傳輸到 python /route function? 還是有其他決定? 可能這個 html 表必須是某種 WTFotms table.widget 形式? 任何想法將不勝感激。 謝謝

http://www.blog.pythonlibrary.org/2017/12/14/flask-101-adding-editing-and-displaying-data/是我設法找到的唯一方法。 只是不要創建帶有循環的html-table,所以flask_table中的Table Class可以幫到您,並且還有進行編輯鏈接的機會。

剛剛發現這篇關於Grid.js 的博客文章 它可以直接在頁面上編輯表格單元格,而無需額外的編輯鏈接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM