我定义了UerProfile,需要为MyForm提取手机数据
class UserProfile(models.Model):
...
phone = models.CharField(max_length=20, blank=True)
class CustomModel(models.Model):
...
phone = models.CharField(max_length=20)
class MyForm(forms.ModelForm):
class Meta:
model = CustomModel
exclude = ['some_fields_but_not_phone',]
现在我需要从UserProfile中获取手机数据(如果已设置),以便在{{form.phone}}字段中预先填充值。然后,用户可以在提交表单时更改或保留原样。
答案 0 :(得分:0)
一种解决方案,虽然可能不是最优雅的,但是在视图中将字典中的数据绑定到MyForm对象。
data = {
'field1': 'data'
'field2': 'data'
'phone': request.user.get_profile().phone
}
form = MyForm(data)
此处有更多信息:https://docs.djangoproject.com/en/1.3/ref/forms/api/
如果设置'phone',则仅填充此字段从此处开始非常简单。