2

我正在尝试上传文件。上传工作正常。

模型.py

class I(models.Model):
top=models.ForeignKey(T)
imgfile = models.FileField(upload_to='static/Uploaded_Images', blank= True)

class T(models.Model):
    ...
    image_id=models.IntegerField(null=True)
    ...

问题是,如果我不上传文件,它会显示错误。我尝试使用blank=True但它不起作用。换句话说,如何使它成为可选的。我使用的是 HTML 输入类型而不是模型表单。我看到了许多类似的错误,但没有工作。

我做错了吗提前谢谢

4

1 回答 1

1

blank=True意味着它不是强制性的form。数据库仍然需要它。

如果您还想null在数据库中为该特定字段(“imgfile”)提供值,则还必须将 传递给null=True该字段的构造函数。

例如

imgfile = models.FileField(upload_to='静态/Uploaded_Images',空白=真,空=真)

请记住,要查看null=True(或对表的任何其他更改)的效果,您必须删除特定表并再次运行 syncdb。

于 2013-07-03T10:59:54.727 回答