python - 在管理面板 Django 中定义十进制格式
问题描述
我创建了一个定义来获取与项目相关的已完成任务的百分比。
class ProjectAdmin(ImportExportModelAdmin,admin.ModelAdmin):
#...
def percentage(sef, obj):
return obj.todo_set.filter(state = True).count() * 100 / obj.todo_set.all().count()
#...
list_display = ['project_title', 'category_list', 'date_format', 'crq_count', 'task_count', 'percentage', 'file_count', 'state']
我想消除小数并将其转换为整数
最后,想法是,如果所有任务都完成了,项目状态应该转到完成
class Project(models.Model):
#...
state = models.BooleanField(blank=True, null = True, default = False)
解决方案
您可以在检索百分比时将获得的值四舍五入:
class ProjectAdmin(ImportExportModelAdmin,admin.ModelAdmin):
# …
def percentage(sef, obj):
return round(
obj.todo_set.filter(state=True).count() * 100 / obj.todo_set.all().count()
)
推荐阅读
- javascript - Nuxt 定制路由器
- swift - 如何将单元格中的文本字段作为出口快速连接到表格视图单元格类
- python - 使用 Pytorch Mask RCNN 时的零除错误
- python - 来自线性同余随机数的数字 PDF
- r - 如何使用线性假设方程“BI+BI:factor(Year==2018)TRUE=0”进行测试而不会出错?
- c# - .NET Entity Framework Core 中的树实现导致参考问题
- python - Nearest neighbor algorithm
- python - pyqtgraph中的UI绘图位置
- sql - Oracle - How to partition by case statement
- javascript - How to implement the audio input level functionality in JavaScript?