Django上有一個項目。該項目有一個來自 bootstrap4 的代碼 - 進度條,我需要這個進度條,但我不明白如何實現(xiàn)它的性能,因為它以百分比存儲數(shù)據(jù),但我沒有百分比,而是項目日期,即有一個開始假設項目是 01 02 2000 和項目結束 01 02 2002 之間有 730 天的差異。以下是我如何將這 730 天變成 100%,其余的 - 比如說 140 天,也變成百分比。HTML 模板<div class="progress"> <div class="progress-bar bg-success" role="progressbar" style="width: 10%" aria-valuenow="10" aria-valuemin="0" aria-valuemax="100"></div></div>Python 模板prjauth = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, verbose_name="") prjtitle = models.CharField(max_length=200, verbose_name="") prjdesc = models.TextField(verbose_name="") prjfiles = models.FileField(upload_to='files_project', verbose_name="") prjdatestart = models.DateTimeField(default=timezone.now, verbose_name="") prjdateend = models.DateTimeField(blank=True, null=True, verbose_name="") prjproekts = models.DateTimeField(blank=True, null=True, verbose_name="") prjproekte = models.DateTimeField(blank=True, null=True, verbose_name="") prjdatesnabs = models.DateTimeField(blank=True, null=True, verbose_name="") prjdatesnabe = models.DateTimeField(blank=True, null=True, verbose_name="") prjdatelines = models.DateTimeField(blank=True, null=True, verbose_name="") prjdatelinee = models.DateTimeField(blank=True, null=True, verbose_name="")
1 回答

BIG陽
TA貢獻1859條經(jīng)驗 獲得超6個贊
您可以向模型添加一個可以返回日期進度的方法:
Class MyModel(models.Model):
# fields
def get_progress(self):
return timezone.now().date - self.start_date / self.end_date - self.start_date
該方法可以在您的模板中調(diào)用:
aria-valuenow="{{ mymodel.get_progress }}"
最后,我建議刪除prj模型字段上的前綴,因為它難以閱讀 - 大概你的模型已經(jīng)被稱為 Project 之類的東西 - 因此它project.start_date比project.prjstart_date.
添加回答
舉報
0/150
提交
取消