Django ModelForm 没有指定模型类

问题描述 投票:0回答:10

我正在尝试使用 ModelForm:

from django.db import models
from django.forms import ModelForm

class Car(models.Model):
    carnumber = models.CharField(max_length=5)

    def __unicode__(self):
        return self.carnumber

class PickForm(ModelForm):
    class Meta:
        Model = Car

我已经检查过了,但找不到我的错误。当我在浏览器中调用视图时,出现以下错误:

ModelForm has no model class specified

我已经测试了在同一 URL 处使用简单的“foo bar”代码调用模型的视图,但是当我尝试此代码时,我收到了上面的类错误。

python django modelform
10个回答
71
投票

应该是

model
而不是
Model
:

class PickForm(ModelForm):
    class Meta:
        model = Car

12
投票

我的错误是因为我写了

meta
而不是
Meta


9
投票

只需执行此方法,您的页面就会运行:

class PickForm(ModelForm):
  class Meta:
    model = Car
    fields = "__all__"

5
投票

就我而言,发生错误是因为我写了

class META
相反,它应该是
class Meta


3
投票

就我而言,错误是由于我写的:

models = User


而不是:

model = User

1
投票
class PickForm(ModelForm):
    class Meta:
        Model = Car`

这里的Model区分大小写,所以使用model而不是Model。

所以代码就变成了

class PickForm(ModelForm):
    class Meta:
        model = Car

0
投票

如果这是一份过去的副本,那么您就有一个拼写错误。我强烈建议您使用 IDE 或具有错误检查功能的东西。我用的是Eclipse。它将为您节省大量时间,避免类似这样的小烦恼。

class PickForm(ModelForm):
    class Meta:
        Model = Car`

你的错字就在汽车的末尾。小撇号的事情。


0
投票

在您定义的表单代码区域中查看您的代码。=,:和meta,Meta可能有错误。所以请仔细查看是否存在区分大小写的错误或那里的任何标志


0
投票

我只是通过写

model: Comment
而不是
model = Comment
🤦u200d♂️

来得到这个错误

-1
投票

您错过了向管理员注册模型的基本步骤。请这样做,这应该对你有用。

在应用程序的

admin.py
文件中添加以下行:

from yourapp.models import yourmodel
admin.site.register(yourmodel)

此处

yourapp
yourmodel
需要替换为您的应用程序和型号的正确名称。

© www.soinside.com 2019 - 2024. All rights reserved.