Django表单定义的值



如何设置表单的定义值?

:

class Record(models.Model):
    user=models.ForeignKey(User)
    foo=models.CharField(max_length=100)

:

class AddForm(forms.ModelForm):
   class Meta:
       model=Record
<<p> 视图/strong>:
class AddRecord(CreateView):
    template_name="any/any.html"
    form_class=AddForm
    model=Record

如果发送<input type="text" name="user" value="ANY_USER_ID"/>并更改任何用户的记录

如何设置字段用户默认值为:request.session.user

您可以在表单类中重写get_initial以返回初始数据的字典:

class AddRecord(CreateView):
    def get_initial(self):
        return {'user': self.request.user}

但是你真正想做的不是在表单上显示用户,而是在保存时自动设置它,正如文档所描述的。

最新更新