我有一个简单的模型,我想使用 ModelForm 保存它。
这是代码:
#models.py
class MyArchive(models.Model):
archive_id = models.CharField(max_length = 20, primary_key=True)
description = models.CharField(max_length = 50, blank = True)
archive_file = models.FileField(upload_to = "my_archives/")
#views.py
class MyArchiveForm(ModelForm):
class Meta:
model = MyArchive
def upload(request):
if request.method == 'POST':
form = MyArchiveForm(request.POST, request.FILES)
if form.is_valid():
form.save()
return HttpResponse('uploaded success!')
else:
logger.debug("invalid form")
return HttpResponse('upload fail!')
我已经同步了数据库并看到了创建的表。但每次它去 form.save 然后说
DatabaseError, no such table.
我使用 ModelForm 保存的方法是否错误?
更新:甚至奇怪的是,当我删除这一行时:form.save()
,它失败并if form.is_valid()
出现相同的错误no such table
,但是当我在调试模式下运行 django 时,if form.is_valid()
工作正常。