@NyxDeveloper

Как присвоить FileField файл зная только путь до него?

Из старой базы данных необходимо скопировать файлы, но так как база данных не хранит конкретно файлы, а только пути до них, нужно при создании нового объекта как-то получать файл по этому пути и присваивать его в поле модели, а дальше django, вроде как, и сам поймет что надо делать. Никогда с таким не сталкивался, в доках написано про присваивание из форм, пробовал присваивать в поле путь - не помогло, открывал через with rb - тоже не помогает. Я наверное совсем профан в этом вопросе, но подскажите кто-нибудь, как можно реализовать такое присваивание?
Сейчас я пробую делать так:
def load_d_docs(cursor):
    cursor.execute('SELECT * FROM d_docs')
    for row in cursor:
        obj = Doc()
        obj.id = row[0]
        if row[2] is not None:
            with open(row[2], 'rb') as file:
                obj.file = file.read()
        if row[4] is not None:
            obj.idProj = Project.objects.get(id=row[4])
        if row[5] is not None:
            obj.description = row[4]
        if row[8] is not None:
            obj.dateUpload = row[8]
        obj.save()
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы