Easily use, manipulate, and store unit-aware measurement objects using Python and Django.
django.contrib.gis.measure has these wonderful 'Distance' objects that can be used not only for storing a unit-aware distance measurement, but also for converting between different units and adding/subtracting these objects from one another.
This module provides for a django model field and admin interface for storing any measurements provided by python-measurement.
Example use with a model:
from django_measurement.models import MeasurementField
from measurement.measures import Volume
from django.db import models
class BeerConsumptionLogEntry(models.Model):
name = models.CharField(max_length=255)
volume = MeasurementField(measurement=Volume)
def __str__(self):
return f"{self.name} of {self.volume}"
entry = BeerConsumptionLogEntry()
entry.name = "Bear Republic Racer 5"
entry.volume = Volume(us_pint=1)
entry.save()
These stored measurement objects can be used in all of the usual ways supported by python-measurement too:
>>> from measurement.measures import Mass
>>> weight_1 = Mass(lb=125)
>>> weight_2 = Mass(kg=40)
>>> added_together = weight_1 weight_2
>>> added_together
Mass(lb=213.18497680735112)
>>> added_together.kg # Maybe I actually need this value in kg?
96.699
- Documentation for django-measurement is available via Read the Docs.
- Please post issues on GitHub.