情况:我有一套书。书籍可以是以下类型之一:“测试”,“高级”和“普通”。数据比例:2%,15%,83%。每个时间单位的金额查询(百分比):40%,20%,40%
我在数据库中看到了解决它的一些方法:
Book.objects.filter(is_test=True)
。例如,它可以是代理模型。类比高级书籍;['Test', 'Premium', 'Common']
中的字符串;我们需要以最佳方式查询这些数据!所有三种书籍变体都需要在一个页面中。存在的查询集组合:仅测试,仅常见,常见+溢价,仅限溢价。
哪种方式更正确,为什么?
如果你需要在一个页面上混合使用不同的类型,单独的模型/表格会使事情变得复杂,没有充分的理由。将两个以上的独占状态映射到布尔字段的组合也是如此。
这将为您提供一个选择字段或包含选项的单独BookType
模型。