2015-07-28 84 views
3

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

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

谢谢!

回答

1

万一别人有兴趣使用SQL Server FILESTREAM功能,并在这里结束了,我就开始对定制工作的Django字段来支持文件流:一个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 它运作良好,我的使用情况,但肯定是不完整的。 捐款欢迎!

+0

哇,谢谢你救了我几个月的头痛! – alexislg

相关问题