我有一个模型和一个窗体(forms.ModelForm),我有一个ImageField。该模型类似于:Django ModelForm ImageField
class Business(models.Model):
business_name = models.CharField(max_length=128)
.
.
business_image = ImageField(
max_length=128,
upload_to=upload_business_image_handler,
height_field='business_image_height',
width_field='business_image_width'
)
business_image_height = models.IntegerField(blank=True, null=True)
business_image_width = models.IntegerField(blank=True, null=True)
.
.
所附表格:
class BusinessForm(forms.ModelForm):
def __init__(self, data=None, files=None, branch_list = None, country_list = None, *args, **kwargs):
super(BusinessForm, self).__init__(data, *args, **kwargs)
# create the MultipleChoiceField choice_list based on language
self.fields['branch'].choices = branch_list
self.fields['country'].choices = country_list
self.postdata = data
self.files = files
business_name = forms.CharField(widget=forms.TextInput(attrs={'size':'50', 'class': 'address'}), required=True)
#business_image = forms.ImageField(widget=forms.ClearableFileInput())
表单中的最后一行被注释掉,因为forms.ClearableFileInput()是FileFields和ImageFields默认的小部件。
现在,当这种形式是用来编辑现有记录在模板中的图像如下所示:
Currently: <image_url>
Change: <browse_button>
我想改变文本标签“目前”和“改变”,而是显示image_url我想显示图像。
当然,我可以复制和修改在'site-packages/django/forms/widgets.py'中找到的'class ClearableFileInput(FileInput)'的代码,但是我想知道是否可以实现这一点。
赞赏任何帮助或建议。
现在我已经看过的代码“类ClearableFileInput(的FileInput)”
是的,这将显示图像在t模板,但我提到的2个项目,当前:和更改:仍然在模板中。 –
Henri