Аналогичное поле ArrayField в Django для использования с SQL Server

Я хочу подключить мой Django backend к SQL Server, но одна из моих моделей требует поля массива, как в PostgreSQL, поэтому есть ли альтернатива?

Если в качестве базы данных вы используете SQLite, то альтернативы для ManyToManyField не существует.

  1. Вот библиотека для использования Listfield в sql под названием django-my-sql, которая поддерживает ListField.

Но он отображается как текстовое поле в панели администратора.

если вы вводите данные через админ панель, то вам нужно разделять значения запятыми: name1,name2,name3.

Сначала храните данные в поле string или char; затем необходимо выполнить преобразование данных для установки или получения.

Что-то вроде этого:

class Sample(models.Model):
    _array_Field = models.CharField(max_length=100)

    @property
    def array_field(self):
        return self._array_Field.split(',')

    @array_field.setter
    def array_field(self, value: list):
       joined_value = ''
       for item in value:
           joined_value += item + ','
       joined_value = joined_value[0:len(joined_value)-1]
       self._array_Field = joined_value
       self.save()
Вернуться на верх