34

我正在尝试使用 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”代码调用模型的视图,但是当我尝试这个代码时,我得到了上面的类错误。

4

9 回答 9

57

它应该model代替Model(并且没有尾随`,但我想这是一个错字):

class PickForm(ModelForm):
    class Meta:
        model = Car
于 2012-01-25T23:45:48.703 回答
8

我的错误是因为我写了元而不是元

于 2020-02-28T07:28:38.077 回答
7

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

class PickForm(ModelForm):
  class Meta:
    model = Car
    fields = "__all__"
于 2017-11-27T16:34:31.647 回答
4

在我的情况下,发生错误是因为我写的 class META ,它应该是 class Meta

于 2020-01-07T15:25:36.927 回答
1

在我的情况下,错误是由于我写的:

models = User


代替 :

model = User
于 2020-03-19T08:33:13.140 回答
0

如果这是一个副本和过去,你有一个错字。我强烈建议您使用 IDE 或带有错误检查功能的东西。Eclipse 是我使用的。它将为您节省大量时间,避免像这样的小烦恼。

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

你的错字就在 Car 的末尾。小撇号的东西。

于 2012-01-25T23:47:40.717 回答
0
class PickForm(ModelForm):
    class Meta:
        Model = Car`

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

所以代码变成

class PickForm(ModelForm):
    class Meta:
        model = Car
于 2021-08-31T09:37:52.933 回答
-1

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

admin.py您的应用程序文件中添加以下行:

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

此处需要替换为您的应用程序和模型的正确名称yourappyourmodel

于 2017-12-07T10:54:53.197 回答
-1

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

于 2020-09-05T15:48:00.940 回答