亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法使用 wtforms、append_entry() 和 FieldList

無法使用 wtforms、append_entry() 和 FieldList

米琪卡哇伊 2022-04-27 13:34:15
我正在努力更改使用 .append_entry() 動態添加的 FieldList 子表單的標簽。我可以成功地更改整個表單的標簽,并且直接在每個單獨的字段前面,但我仍然在每個連續的字段實例上方得到一個項目符號和一個默認的 label-0、label-1、label-2 等,我無法重命名或刪除它。我正在創建一個表格,收集不同地區存在的不同數量的社區和武裝分子的特征。我有一個整體表格和四個子表格。例如,如果我有 2 個區域和 3 個社區,我的表格的第一部分稱為 regionpercent,會詢問每個區域的人口中認同每個社區的百分比,如下所示:地區 1社區 1百分比: 社區 2百分比: 社區 3 百分比:區域 2社區 1百分比: 社區 2百分比: 社區 3 百分比:所以我需要將 regionpercent 的子標簽更改為 ['Region1 <br>Percent Community 1:', 'Percent Community 2:', 'Percent Community 3:', ' <br>Region 2 <br>Percent Community 1:', 'Percent Community 2:', '百分比社區 3:']。但是現在,在六個字段中的每一個之前,我都有一個“regionpercent-0”、“regionpercent-1”等等。主窗體稱為 ThirdForm()。
查看完整描述

2 回答

?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

我通過在我的 HTML 模板中使用 Javascript 根據隱藏在頁面中的名稱查找標簽來解決了這個問題。然后我用我喜歡的標簽名稱替換它們。例如,出現的不需要的標簽是 regionpercent-0,我使用了以下代碼:


var label = document.querySelector('label[for="regionpercent-0"]') !==null;

if (label) {

    var label = document.querySelector('label[for="regionpercent-0"]');

    label.textContent = '{{ region_percent_list[0] }}';

}

其中 region_percent_list[0] 是我想要使用的實際標簽的變量名。


查看完整回答
反對 回復 2022-04-27
?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

我理解你的掙扎。


列表中的每個項目都使用 Label 類,該類具有 field_id 和 text 屬性。


然后您可以編輯標簽字段中的文本,如下所示:


for i in range(len(regionnames)*len(communitynames)):

    form.regionpercent.append_entry()

    form.regionpercent[i].label.text = 'Region {}'.format(i)  # include this line

顯然還有其他變化,但我認為這足以理解邏輯。


這對我幫助很大。


查看完整回答
反對 回復 2022-04-27
  • 2 回答
  • 0 關注
  • 198 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號