Файловый поток SQL Server с django-mssql

Я хотел бы использовать функцию файлового потока SQL Server для хранения файлов (в основном, больших изображений) из приложения Django. В настоящее время я использую django-mssql в качестве базы данных для моего проекта Django. Я не думаю, что есть какое-либо существующее поле модели в этом пакете, которое связано со столбцом Filestream в SQL Server.

Как лучше всего использовать функцию потока файлов из Django? Существуют ли какие-либо существующие пакеты? Или мне нужно реализовать свое собственное поле модели, унаследованное от встроенных полей Django (FileField или BinaryField)?

Спасибо!

1 ответ

Решение

На всякий случай, если кто-то еще заинтересован в использовании функции файлового потока SQL Server и на этом остановится, я начал работать над пользовательскими полями django для поддержки файлового потока: FileStreamDataField который отображается на varbinary(max) FILESTREAM тип и FileStreamField которое является виртуальным полем, которое оборачивает потоковый API win32.

import uuid

from django.db import models
from sql_filestream import FileStreamDataField, FileStreamField, UUIDField

class DocumentModel(models.Model):
    doc_id = UUIDField(default=uuid.uuid4)
    doc_content = FileStreamDataField(identifier_field='doc_id', null=True, blank=True)
    document = FileStreamField('doc_id', 'doc_content') 

Вы можете найти его с примерами здесь: https://github.com/rparent/django-mssql-filestream Это хорошо работает в моем случае использования, но, конечно, не полностью. Взносы приветствуются!

Другие вопросы по тегам