Django Model - специальные символы в имени поля

Я создаю модель для своего приложения. К сожалению, я работаю с такими единицами измерения, как км/ч, кг CO2/тонна, теплосодержание (HHV) - всего 30 различных единиц. Я не знаю, как правильно сохранить их в модели django или, возможно, в сериализаторе, чтобы он отображал правильное название единиц измерения, включая "/", " ", "(" в REST Responses. Также я буду импортировать данные через модуль django-import-export, поэтому он должен распознавать колонки excel, которые будут называться так же, как фактическое имя единицы. Например:

class Units(models.Model):
     km_h = models.FloatField(default=-1, null=True)
     kg_co2ton = models.FloatField(default=-1, null=True)

и я хотел бы иметь эти данные в следующем виде:

class Units(models.Model):
     km/h = models.FloatField(default=-1, null=True)
     kg co2/ton = models.FloatField(default=-1, null=True)

Как написать модель и/или сериализатор, чтобы они работали и выглядели хорошо?

Для django-import-export вы можете использовать column_name класса Field для объявления имени столбца в соответствии с вашей таблицей импорта Excel:

class UnitsResource(resources.ModelResource):
    km_h = Field(attribute='km_h', column_name='km/h')
Вернуться на верх