Django: Показать существующее изображение с помощью экземпляра ModelForm, а не с помощью ввода файла? - PullRequest
0 голосов
/ 27 февраля 2011

У меня есть несколько изображений, назначенных для ImageField в нескольких сохраненных экземплярах модели. Я хочу отобразить ModelForm на основе интересующей модели, только с целью установки одного внешнего ключа для модели. Я создаю экземпляр ModelForm с моделью, которую хочу отредактировать.

Все, что я хотел бы сделать, это отобразить существующее изображение для модели вместе с выбором FK. Было бы достаточно легко сделать оба по отдельности, но, поскольку я на самом деле отображаю несколько форм рядом друг с другом, внутри цикла {% for form in forms %}, я хочу, чтобы изображение отображалось с использованием чего-то вроде <img src="{{ form.image.get_image_url }} />. Я не верю, что подобный шаблонный синтаксис существует для форм в ImageField, но, надеюсь, вы поймете мой дрейф.

Кажется, это должно быть тривиальным упражнением, но я не нашел четкого ответа в документации или где-либо еще. В некоторых ветках форума было высказано предположение, что создание настраиваемого поля Widget может быть рекомендуемым решением, главным образом в том, что касается настройки администратора, но я не могу разобраться в деталях, как именно я должен сделать это в моем случае на сайте внешний интерфейс. Заранее благодарим за любые подсказки.

1 Ответ

1 голос
/ 27 февраля 2011

Вы можете получить доступ к объекту модели, связанному с ModelForm (при условии, что такая связь существует), используя form.instance. Оттуда вы можете получить доступ к изображению, как обычно.

...