简单地说,我写道:
# forms.py
class NoteForm(ModelForm):
def __init__(self, *args, **kwargs):
super(NoteForm, self).__init__(*args, **kwargs)
#add attributes to html-field-tag:
self.fields['content'].widget.attrs['rows'] = 3
self.fields['title'].widget.attrs['size'] = 20
class Meta:
model = Note
fields = ('title','content')
向HTML标记字段添加或修改某些属性。
但是在这个时候,我将不得不直接在models.py
中的Note模型中进行#models.py
class Note(models.Model):
title = models.CharField(max_length=100)
content = models.TextField(max_length=255)
#how to define the fields.widget.attrs here ?????
仅供参考:为什么?因为它将作为
工作NotesFormSet = inlineformset_factory(NoteBook, Note, extra=10)
添加/编辑笔记本时添加许多Notes
注意:这不是django admin
如果我没有给你足够的上下文,请注释plz,任何提示都是apreciated =')
答案 0 :(得分:1)
不,您仍然在表单中执行此操作,但您只需将该表单作为参数传递给inlineformset_factory
。
NotesFormSet = inlineformset_factory(NoteBook, Note, extra=10, form=NoteForm)