【问题标题】:Django Issue: NameError with models.py fileDjango 问题:带有models.py 文件的NameError
【发布时间】:2015-09-23 16:55:40
【问题描述】:

我在 Django 中的模型文件出现以下错误。

“文件”/home/mosmith/Projects/MasteringDjango/mysite/books/models.py”,第 23 行,在书中 作者 = 模型.ManyToManyField(作者) NameError: name 'Author' is not defined"

我看到人们遇到了其他问题,但这是由于在通话之前没有定义模型。

这是我的 models.py 文件:

from django.db import models


    class Arthor(models.Model):
        first_name = models.CharField(max_length=30)
        last_name = models.CharField(max_length=40)
        email = models.EmailField()

        def __str__(self):
            return self.first_name

    class Publisher(models.Model):
        name = models.CharField(max_length=30)
        address = models.CharField(max_length=50)
        city = models.CharField(max_length=60)
        state_province = models.CharField(max_length=30)
        country = models.CharField(max_length=50)
        website = models.URLField()

    class Book(models.Model):
        title = models.CharField(max_length=100)
        authors = models.ManyToManyField(Author)
        publisher = models.ForeignKey(Publisher)
        publication_date = models.DateField()

【问题讨论】:

  • 模型名为 Arthor,但作者为 ManyToManyField

标签: django django-models syntax-error


【解决方案1】:
class Arthor(models.Model):

更改为 AUTHOR,而不是 ARTHOR。

【讨论】:

  • 谢谢,我不知道我怎么忽略了这一点。
猜你喜欢
  • 1970-01-01
  • 2011-03-07
  • 1970-01-01
  • 2019-05-27
  • 1970-01-01
  • 1970-01-01
  • 2016-11-24
  • 1970-01-01
  • 2020-09-21
相关资源
最近更新 更多