@maniacus26

Django получить имя файла из модеи с FileField?

Добрый день !
Есть модель содержащая помимо текстовых полей еще файл.
class Inform_note(models.Model):
    id = models.AutoField(primary_key=True)
    in_note_on = models.FileField(upload_to='notes', blank=True)
    ...


В формах получается создавать записи, добавлять и изменять файлы.
Сейчас таких записей 10.

Я хочу после создания формы с файлом (CreateView) или ее обновлении (UpdateView), получить имя файл или путь к приложенному файлу, для его дальнейшей обработки.

view.py

class Inform_noteEditView(generic.UpdateView):
    model = Inform_note
    fields = '__all__'
    def get_form(self, form_class=None):
        form = super().get_form(form_class)
        form.helper = FormHelper()
        form.helper.add_input(Submit('submit', 'Create', css_class='btn-primary'))
        form.fields['in_note_on'].label = "Приложенный файл"


Как взять имя файла из form.fields['in_note_on'] ?
Или как сделать это правильнее ?
  • Вопрос задан
  • 920 просмотров
Решения вопроса 1
@maniacus26 Автор вопроса
Решение:
Добавил в view.py перед функцией def get_form(self, form_class=None):
queryset = Inform_note.objects.all()
    def get_object(self):
        ob = super().get_object()
        print(ob.in_note_on)

Таким образом получилось корректно обратиться к прикрепленному файлу.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы