我想使用 SQL Server Filestream 功能来存储来自 Django 应用程序的文件(主要是大图像)。目前我正在使用 django-mssql 作为我的 Django 项目的数据库后端。我认为该包中没有任何现有模型字段链接到 SQL Server 中的 Filestream 列。
使用 Django 的文件流功能的最佳方式是什么?有没有现成的包?还是我需要实现我自己的自定义模型字段,继承自 Django 的内置字段(FileField 或 BinaryField)?
谢谢 !
我想使用 SQL Server Filestream 功能来存储来自 Django 应用程序的文件(主要是大图像)。目前我正在使用 django-mssql 作为我的 Django 项目的数据库后端。我认为该包中没有任何现有模型字段链接到 SQL Server 中的 Filestream 列。
使用 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 它适用于我的用例,但肯定不完整。欢迎投稿!