所以现在我正在编辑模型表单提供给视图的 Querydict,以使一个字段中的提交全部小写并且没有空格。但是当我构造该字典并将其传递回 Modelform 以进行验证/保存时,如果多次输入相同的内容,它不会给我一个错误。似乎 unique=True 应该适用于所有格式正确的提交,而不仅仅是来自 request.POST 的提交。关于这个问题的任何帮助/见解都会很棒。
编辑:代码
处理模型的视图
dict = {}
sitename = request.POST['sitename']
#insert an if statement telling them only letters are allowed
urltitle = ''.join(sitename.split()).lower()
dict['sitename'] = urltitle
make = MakesiteForm(dict)
if make.is_valid():
make.save()
有问题的模型
class Makesite(models.Model):
sitename = models.CharField(max_length=100, unique = True)
siteinfo = models.ManyToManyField(Siteinfo)
ref_id = models.ManyToManyField(RefID)
def __unicode__(self):
return u'%s' %(self.sitename)