поле формы django - как представить значение в шаблоне формы - PullRequest
1 голос
/ 25 февраля 2010

У меня есть модель с FileField, которая показана ниже. Я использую эту модель в модельной форме.

receipt  = models.FileField(upload_to='receipt/%m-%Y/', max_length=255)

Я могу сохранить объект, а поле квитанции содержит URL-адрес файла.

Теперь, когда я представляю этот объект в форме модели, URL-адрес файла не отображается, вместо этого отображается сообщение «файл не выбран».

Это HTML-шаблон, который я использую для формы:

<table  cellspacing="5">
 {{ cash_expenditure_form.as_table }}
</table> 

и форма, которую я использую:

класс CashExpenditureForm (forms.ModelForm):

class Meta:
    model = CashExpenditure
    exclude = ('project','paid', 'paid_check','invoice','cash_expenditure_selection')

Когда я проверяю этот объект в админке, URL поля отображается как положено. Таким образом, я думаю, что что-то отсутствует в шаблоне формы HTML.

Решение:

AdminFileWidget делает свое дело ;-) легко, как всегда ..

1 Ответ

0 голосов
/ 25 февраля 2010

Я не уверен, что вы можете предварительно заполнить поле выбора файла.

Тип ввода файла создает поле, через которое пользователи могут загружать файлы со своего локального компьютера или сети. Атрибут VALUE указывает имя исходного файла, но он обычно игнорируется браузерами в качестве меры безопасности. Атрибут ACCEPT предоставляет список допустимых типов мультимедиа через запятую, что позволяет браузеру отфильтровывать неподходящие файлы. Текущие браузеры обычно игнорируют атрибут ACCEPT.

http://www.htmlhelp.org/reference/html40/forms/input.html

...