18910140161

HTML-无法将ModelForm中窗体的attrs传递到模板-堆栈溢出

顺晟科技

2022-10-19 11:52:26

152

我试图设置一个ModelForm,但我没有在模板中获得我在表单中设置的attrs。 另外,我希望获得格式为dd/mm/yyyy的日期输入, 这是我的模型:

modelform:

和我的视图:

我希望使用日期格式dd/mm/yyyy在模板中获得日期纠察,但是当我手动指定模板中的输入类型为“date”时,我使用日期选择器获得格式mm/dd/yyyy。 这是我使用的模板:

即使我将表单设置为接受多个文件上传,我也需要在模板中手动设置。此外,cssclass='form-control'不能从窗体中的小部件设置中工作。


顺晟科技:

我解决了这个问题,我发现我没有将MofelForm分配给ModelView的上下文数据。 这是ModelView:

这是我得到的结果:

可以在ModelForm类中使用流动代码:

class Delivery(models.Model):
    user = models.ForeignKey(Customer, on_delete=models.CASCADE, related_name=_("delivery_user"))
    full_name_reciever = models.CharField(_("Reciever Full Name"), max_length=50)
    pickup_address = models.ForeignKey(Address, on_delete=models.CASCADE, related_name=_("pickup_address"))
    destination_address = models.CharField(max_length=250)
    destination_city = models.ForeignKey(City, on_delete=models.CASCADE, related_name=_("delivery_city"))
    destination_post_code = models.CharField(max_length=20)
    operation_date = models.DateField(
        _("desired pickup date"), auto_now=False, auto_now_add=False, blank=False, null=False
    )
    boxes_number = models.PositiveIntegerField(_("Number of Boxes"), default=1)
    boxes_wight = models.PositiveIntegerField(_("Boxes Wight"), default=1)
    boxes_volume = models.PositiveIntegerField(_("Boxes Volume"), default=0)
    document = models.FileField(
        help_text=_("Delivery Documets"),
        verbose_name=_("Delivery Certificates"),
        upload_to="documents/deliveries_documents/",
    )
    invoice = models.BooleanField(_("check if you want an invoice"), default=False)
    created_at = models.DateTimeField(_("Created at"), auto_now_add=True, editable=False)
    updated_at = models.DateTimeField(_("Updated at"), auto_now=True)
    delivery_key = models.CharField(max_length=200)
    billing_status = models.BooleanField(default=False)
    delivery_status = models.BooleanField(default=False)

    class Meta:
        ordering = ("-created_at",)
        verbose_name = _("Delivery")
        verbose_name_plural = _("Deliveries")

    def __str__(self):
        return str(self.created_at)
  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航