【发布时间】:2013-09-25 05:08:27
【问题描述】:
我正在尝试学习 Django,我现在正在阅读此链接: https://docs.djangoproject.com/en/1.5/topics/forms/modelforms/
如果您在提供的链接中向下滚动,则会显示验证表单涉及两个主要步骤,第一步是“验证表单”,这会导致此链接: https://docs.djangoproject.com/en/1.5/ref/forms/validation/#form-and-field-validation
它说每次验证的第一步是在字段上使用 to_python() 方法。我不明白他们说的是什么意思
“它会强制值以更正数据类型并在不可能的情况下引发 ValidationError。此方法接受来自小部件的原始值并返回转换后的值。”
所以假设我有一个这样的模型
class User(models.Model):
user_id = models.AutoField(unique=True, primary_key=True)
username = models.SlugField(max_length=50, unique=True)
first_name = models.CharField(max_length=50)
我创建了一个这样的表单
class UserForm(forms.ModelForm):
class Meta:
model = User
现在,我该如何使用 to_python() 方法?我在视图中使用它吗?还是我必须在 forms.py 文件中使用它?如果我在视图中使用它,会调用什么函数?
【问题讨论】:
标签: python django validation django-models django-forms