【发布时间】:2020-11-24 21:04:48
【问题描述】:
我有一个模型表单并显示错误:ModelForm has no model class specified while access to html.
forms.py:
class Add_Product(forms.ModelForm):
product_name = forms.CharField()
price = forms.DecimalField()
img = forms.ImageField()
img2 = forms.ImageField()
img3 = forms.ImageField()
storage_amount = forms.IntegerField()
description = forms.CharField(widget=forms.Textarea(attrs={'cols': 80, 'rows': 20}))
Hot = forms.BooleanField(widget=forms.CheckboxInput())
type = forms.ChoiceField(widget=forms.RadioSelect, choices=PRODUCT_CHOICES)
status = forms.ChoiceField(choices=STATUS)
slug = forms.CharField()
class Meta:
models = Product
fields = ('product_name', 'price', 'img', 'img2', 'img3', 'storage_amount', 'description', 'Hot', 'type', 'status', 'slug')
views.py:
def add_product(request):
if request.method == 'POST':
form = Add_Product(request.POST)
if form.is_valid:
form.save()
messages.success(request, 'Succeed')
return redirect('/')
else:
form = Add_Product()
context = {'form': form}
return render(request, 'add_product.html', context)
add_prodcut.html:
<form method="POST" class="card-body" >
{% csrf_token %}
{{ form | crispy }}
<button type="submit" value="submit">Submit</button>
</form>
【问题讨论】:
-
请在 models.py 中显示您的
Product模型。
标签: django django-forms