Python Django modelfield,如何获取实际值?
如果我有一个带有如下十进制字段的模型:Python Django modelfield,如何获取实际值?,python,django,Python,Django,如果我有一个带有如下十进制字段的模型: class Number(models.Model): decimal = models.DecimalField(max_digit=10, decimal_places=3) 然后我想从一个特定的对象中检索这个值: n = Number(decimal=15.5) n.save() # Lets say n got id = 1 decimal = Number.objects.get(id=1).decimal 现在decimal不是15
class Number(models.Model):
decimal = models.DecimalField(max_digit=10, decimal_places=3)
然后我想从一个特定的对象中检索这个值:
n = Number(decimal=15.5)
n.save()
# Lets say n got id = 1
decimal = Number.objects.get(id=1).decimal
现在decimal不是15.5,而是某种十进制数据类型
Decimal('15.5')
那么如何从decimal数据类型中检索15.5呢?您可以通过将decimal对象值强制转换为float来获取它 例如:
dec = Number.objects.get(id=1).decimal
dec = float(dec)
甚至
dec = str(dec) #Please note this converts to a string type.
还有一种方法是
dec = format(dec, '.2f') #Or change the precision to cater to your needs
请注意,使用
decimal
作为变量名不是一个好主意太好了这就是我想要的答案。在查询中如何做到这一点?还是我们必须循环并格式化每个值?