python – 如何将django ModelForm字段显示为不可编辑
发布时间:2020-12-20 12:18:43 所属栏目:Python 来源:网络整理
导读:用 django ModelForm开始我的初学课程,我想给用户一个在博客中编辑条目的能力.BlogEntry有一个日期,发布时间,标题和内容.我想向用户显示一个显示所有这些字段的编辑表格,但只有标题和内容可编辑. date和postingTime应显示为不可编辑. class BlogEntry(models
用
django ModelForm开始我的初学课程,我想给用户一个在博客中编辑条目的能力.BlogEntry有一个日期,发布时间,标题和内容.我想向用户显示一个显示所有这些字段的编辑表格,但只有标题和内容可编辑. date和postingTime应显示为不可编辑.
class BlogEntry(models.Model): title = models.CharField(unique=True,max_length=50) description = models.TextField(blank=True) date = models.DateField(default=datetime.date.today) postedTime = models.TimeField(null=True) ... 为了添加条目,我以正常方式使用ModelForm. class BlogEntryAddForm(ModelForm): class Meta: model = BlogEntry ... 但是如何创建编辑表单?我希望它显示日期,将publishTime显示为不可编辑(但仍然在表单上显示)并让用户编辑标题和说明. 如果我使用,在类Meta中排除date和postingTime,这将导致它们不出现在窗体上.那么,我怎样才能将它们显示为不可编辑? class BlogEntryEditForm(ModelForm): class Meta: model = BlogEntry ...?... 解决方法
在表单对象中,将该字段的属性声明为readonly:
form.fields['field'].widget.attrs['readonly'] = True (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |