import decimal from django.db import models class Cash(decimal.Decimal): currency = "USD" class CashField(models.DecimalField): def __init__(self, **kwargs): kwargs["max_digits"] = 20 kwargs["decimal_places"] = 2 super().__init__(**kwargs) def from_db_value(self, value, expression, connection): cash = Cash(value) cash.vendor = connection.vendor return cash class CashModel(models.Model): cash = CashField()