Джанго моделирует "блоб" поле - PullRequest
2 голосов
/ 07 апреля 2011

Я хочу создать таблицу примерно так -

CREATE TABLE trial_xml (
id int (11) DEFAULT NULL,
pid int (11)DEFAULT NULL,
sid varchar (256) CHARACTER SET utf8 NOT NULL,
data blob,
ПЕРВИЧНЫЙ КЛЮЧ (soid), КЛЮЧ suid_index (suid)) ENGINE = MySAM DEFAULT CHARSET = latin1

мой вопрос, как мне установить "data" field как "blob" в моделях django.py ??

Я имею в виду, какой синтаксис?

ОБНОВЛЕНИЕ: я не хочу устанавливать data поле как longtext.Я хочу только blob поля данных.

Ответы [ 3 ]

2 голосов
/ 23 сентября 2011

Я использовал это простое поле для бэкэнда 'mysql', вы можете изменить его для других бэкэндов

class BlobField(models.Field):
    description = "Blob"
    def db_type(self):
        return 'blob'
1 голос
/ 30 октября 2015

Для чего бы то ни было, у Django теперь есть правильное BinaryField.Он был добавлен 13 декабря 2012 года.

https://github.com/django/django/commit/8ee1eddb7e148de89aebde9e68da495633fc1ec9

Соответствующая документация доступна здесь: https://docs.djangoproject.com/en/1.8/ref/models/fields/#binaryfield

1 голос
/ 07 апреля 2011

В ORM Джанго нет поля для больших двоичных объектов.Либо используйте что-то вроде FileField, либо ищите подходящие классы полей с помощью поисковой системы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...