如何解决为什么向 Django 表单添加样式或小部件会阻止数据保存在数据库中?
我只是尝试了多种方式来设置我的 Django 表单样式,但每次我这样做都会阻止数据保存在 Django 的管理数据库中。
这是我的代码:
模型.py:
class listing(models.Model):
title = models.CharField(max_length=64)
describtion = models.CharField(max_length=300)
bid = models.FloatField()
category = models.ForeignKey(categories,default=1,verbose_name="Category",on_delete=models.SET_DEFAULT)
user = models.ForeignKey(User,default='',verbose_name="User",on_delete=models.SET_DEFAULT)
image = models.CharField(max_length=400)
def __str__(self):
return f"{self.title} "
class create(ModelForm):
class Meta:
model = listing
fields = [ 'title','describtion','bid','category','image']
添加小部件后:
class create(ModelForm):
class Meta:
model = listing
fields = [ 'title','image']
widgets={
'title': TextInput(attrs={'class':'form-control'}),'describtion': TextInput(attrs={'class':'form-control'}),'image': TextInput(attrs={'class':'form-control'}),'bid': NumberInput(attrs={'class':'form-control'}),'category': SelectMultiple(attrs={'class':'form-control'}),}
Views.py:
def CreateListing(request):
user = request.user
if request.method == "POST":
form = create(request.POST,request.FILES)
if form.is_valid():
form.instance.user = user
form.save()
return redirect('listing')
else:
return render(request,"auctions/Create.html",{
'form': create
})
Ps : 没有小部件,数据将保存在数据库中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。