无法将查询结果中的数字转换为模板中的浮点数

时间:2018-03-27 14:56:07

标签: django parsefloat tofixed

我有一个sql存储过程返回值(特征及其值)。

表中的值是实数,固定为2位小数,表似乎不是问题,因为数字存储正确。

当我加载我的模板(我使用Python + Django)时出现问题,这些值列在选项卡中:

<table id="regnorme3Tab" name="regnorme3Tab" class="display" width="100%" cellspacing="0">
         <thead>
            <tr>
                <th>ID</th>
                <th>Code</th>
                <th style="width:200px">Libellé</th>
                <th>Limite inf</th>
                <th>Valeur</th>
                <th>limite sup</th>
            </tr>
        </thead>
        <tbody>
           {% for reg_norme in reg_savs %}
              {%if reg_norme.Saisie == 'O' %}
              <tr name="Reg_Normes" id="{{reg_norme.regauxnormes}}">
              <th><span> {{reg_norme.Id}}</span></th>
              <th class="codevalue"><span> {{reg_norme.Code}}</span></th>
              <th style="width:200px"><span> {{reg_norme.LibEtendu}}</span></th>
              <th><span> {{reg_norme.LimitInf}}</span></th>
              <th><span><input type="number" max="{{reg_norme.LimitSup}}" step="0.01" min="{{reg_norme.LimitInf}}"class="{{reg_norme.Code}}"  id="{{reg_norme.Id}}" value="{{reg_norme.Valeur}}" required style="width:40px;"></span></th>
              <th><span> {{reg_norme.LimitSup}}</span></th>
              </tr>
              {%endif%}
           {% endfor %}
        </tbody>
</table>

如果我留下这样的东西,我的输入中没有显示任何内容,我在一些孤立的数字输入上遇到了同样的问题,我设法通过使用parseFloat()和toFixed(2)来显示数据。

document.getElementById('ebHumValue').value = parseFloat({{displayHUMHumidite}}).toFixed(2);

所以我虽然我会在我的标签上创建一个带循环的函数,并使用parseFloat和toFixed来显示某些内容。

$("#regnorme3Tab :input").each(function () {
var number = this.name;
this.value = number;
alert(parseFloat(this.name).toFixed(2));
});

该功能在document.ready中,因此在加载后会正确格式化数字。

但问题是我没有在标签中工作,我试图在不同阶段显示价值,因为我不明白它首先从22.4(在表格中)变为22.3999945754当我打印它,当我在它上面使用parseFloat()时,它变为22,即使我使用toFixed(2),它也变为22.00并且我真的不明白为什么因为我的页面上的孤立输入的相同转换。 / p>

知道为什么基础值会像第一个那样改变吗?我怎么设法施展它以便显示正确的数字?

1 个答案:

答案 0 :(得分:0)

您是否尝试使用模板gabarit floatformat builtin?

continue_loop = True while continue_loop : if confirm_social_media == 'n': victims.append(victim_data) continue while True: social_media = input("\nType of social media: " "\n'i' = Instagram" "\n's' = Snapchat" "\n't' = Twitter" "\n'y' = Youtube" "\n'f' = Facebook" "\n'o' = Other" "\nOr blank for next") if not social_media: continue_loop = False break if social_media == 'i': iinput = input("Instagram " + str(inumbr) + ": ") if family_members == 'm': mother_instagram.append(iinput) elif family_members == 'f': father_instagram.append(iinput) elif family_members == 'o': other_instagram.append(iinput)

来源:https://docs.djangoproject.com/fr/2.0/ref/templates/builtins/#floatformat