【问题标题】:ModelForm has no model class specified while accessing to htmlModelForm 访问 html 时没有指定模型类
【发布时间】: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


【解决方案1】:
class Meta:
    models = Product

应该是

class Meta:
    model = Product

【讨论】:

    猜你喜欢
    • 2014-05-18
    • 2012-02-19
    • 2017-01-02
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 1970-01-01
    • 2013-11-22
    • 1970-01-01
    相关资源
    最近更新 更多