【发布时间】:2016-07-28 15:04:29
【问题描述】:
是不是create函数没有按照模型规范验证?这是我的模型:
class Contact(models.Model):
id = models.AutoField(primary_key=True)
firstname = models.CharField(max_length=100, null=False, blank=False)
lastname = models.CharField(max_length=100, null=False, blank=False)
email = models.EmailField(max_length=150, blank=False, null=False)
active = models.BooleanField(default=True)
我在我的view 中使用了这个功能:
new_contact = Contact.objects.create(firstname=a,
lastname=b,
email=c)
# where a, b, & c are empty strings in request.POST, which shouldn't validate
对create 的调用没有问题。但是,情况不应该如此。该模型根据需要指定这些字段。事实上,如果我去管理面板查看这个对象,我无法保存它(不做任何更改),因为它对我大喊说这些字段是必需的。
create 不验证是正常行为吗?
如何强制验证?
【问题讨论】:
-
@e4c5 是的,我创建了一个表单,但这并没有解决我的问题。在这一点上,我只是在一个视图中接受几种形式。它强制用户进行页面刷新只是为了向正在创建的主模型添加辅助信息,我不喜欢。
标签: django validation