SQL 使用 django-mssql 的服务器文件流

SQL Server Filestream with django-mssql

我想使用 SQL 服务器文件流功能来存储来自 Django 应用程序的文件(主要是大图像)。 目前我正在使用 django-mssql 作为我的 Django 项目的数据库后端。我认为该包中没有任何现有模型字段链接到 SQL 服务器中的文件流列。

使用 Django 的文件流功能的最佳方式是什么?有没有现成的包裹?或者我是否需要实现我自己的自定义模型字段,继承自 Django 的内置字段(FileField 或 BinaryField)?

谢谢!

以防万一其他人对使用 SQL Server Filestream 功能感兴趣,并在此处结束,我开始使用自定义 django 字段来支持 Filestream:一个 FileStreamDataField 映射到 varbinary(max) FILESTREAM 类型和一个 FileStreamField ,它是一个包装 win32 Streaming API 的虚拟字段。

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 它适用于我的用例,但肯定不完整。 欢迎投稿!