首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django/HTML:使用模型中的十进制值预填充"number“输入字段

Django/HTML:使用模型中的十进制值预填充"number“输入字段
EN

Stack Overflow用户
提问于 2021-01-08 14:20:37
回答 1查看 201关注 0票数 0

我正在编写代码,用于编辑用户已经保存在数据库中的产品的信息。所以我想用“旧”信息预先填充表单的字段。

一切正常,除了我无法展示的价格。我知道这个问题与小数有关,因为“权”字段(整数)工作得很好。

以下是我的视图函数中的上下文(工作正常,我可以在控制台上打印价格值):

代码语言:javascript
复制
context["old_title"] = selected_product.title
    context["old_weight"] = selected_product.weight
    context["old_dayprice"] = selected_product.price_day_tvac
    context["old_weekendprice"] = selected_product.price_weekend_tvac
    context["old_weekprice"] = selected_product.price_week_tvac
    context["old_monthprice"] = selected_product.price_month_tvac
    context["old_description"] = selected_product.text

以下是HTML输入:

代码语言:javascript
复制
<div class="col-md-3 multi-horizontal" data-for="dayprice">
                  <div class="form-group" data-children-count="1">
                    <label
                      class="form-control-label display-7 font-weight-bold"
                      for="website"
                      >€ / day </label
                    >
                    <input
                      type="number"
                      class="form-control"
                      name="dayprice"
                      data-form-field="Dayprice"
                      id="dayprice"
                      placeholder="5"
                      step="any"
                      min="0"
                      value= "{{ old_dayprice }}"
                    />
                    <p class="font-italic font-weight-light"></p>
                  </div>

下面是模型关注的领域:

代码语言:javascript
复制
price_day_tvac = models.DecimalField(verbose_name="DAY - Medium season", default=0, max_digits=9, decimal_places=2)
price_week_tvac = models.DecimalField(verbose_name="WEEK - Medium season", default=0, max_digits=9, decimal_places=2)
price_weekend_tvac = models.DecimalField(verbose_name="WEEKEND - Medium season", default=0, max_digits=9, decimal_places=2
price_month_tvac = models.DecimalField(verbose_name="MONTH - Medium season", default=0, max_digits=9, decimal_places=2)

我试着改变‘步骤’(做不同的值,‘任意’,删除它),放置一个硬编码的值(不管小数是否有效),将上下文中的数字转换为fload()。

我真的不知道怎么解决这个问题。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-08 14:53:08

您是否尝试过将上下文转换为字符串?因为你已经试着把它转换成浮点数了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65630737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档