3

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

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

谢谢 !

4

1 回答 1

1

以防万一其他人对使用 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 它适用于我的用例,但肯定不完整。欢迎投稿!

于 2016-11-10T18:18:17.227 回答