Загрузка файлов в GridFS с использованием Django mongodb

Я использую django-mongodb для своего проекта. Мне нужно загружать изображения через интерфейс администратора и использовать файловое хранилище gridfs для хранения изображений.Django-mongodb имеет "Бэкэнд хранилища Django для GridFS". Я пробовал это и следовал инструкциям, но не смог сохранить images. Объекты сохраняются должным образом, но не изображения с ними.

Models.py

from django.db import models
from gridfsuploads import gridfs_storage

class FileUpload(models.Model):
    created_on = models.DateTimeField(auto_now_add=True)
    file = models.FileField(storage=gridfs_storage, upload_to='/')

Settings.py

DATABASES = {
    'default' : {
        'ENGINE': 'django_mongodb_engine',
        'NAME': 'tutorial'
    }
}

INSTALLED_APPS = [
    'django.contrib.contenttypes',
    'django.contrib.auth',
    'django.contrib.admin',

    'nonrelblog',
    'gridfsuploads'
]
ROOT_URLCONF = 'urls'

DEBUG = TEMPLATE_DEBUG = True

Каждый раз, когда я создаю объект FileUpload с помощью интерфейса администратора, объекты создаются успешно, но я не могу найти загруженное изображение в указанном месте. Я не могу понять это, я даже тестировал пример проекта Djnago-non-rel guys для используя gridfs, но та же проблема с этим.

1 ответ

Можете ли вы показать нам содержимое коллекции GridFS? По умолчанию следует использовать базу данных "default", коллекцию "storage". Если вы используете оболочку Монго, как:

use default
db.storage.find()

Там что-нибудь есть? Или вы переопределяете базу данных или коллекцию по умолчанию для gridfsuploads?

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