gpt4 book ai didi

python - 名称未在 Django 模型中定义

转载 作者:太空狗 更新时间:2023-10-29 18:18:44 25 4
gpt4 key购买 nike

我有一个 Django 应用程序,其 models.py 文件中包含以下内容:

from django.db import models

class Event(models.Model):
date = models.DateField()
name = models.TextField(max_length=60)
venue = models.ForeignKey(Venue)

def __unicode__(self):
return self.name

class Venue(models.Model):
name = models.TextField(max_length=60)
street_address = models.TextField(max_length=60)
locality = models.TextField(max_length=60)
region = models.TextField(max_length=60)
postal_code = models.TextField(max_length=60)
country_name = models.TextField(max_length=60)
latitude = models.DecimalField(max_digits=9, decimal_places=6)
longitude = models.DecimalField(max_digits=9, decimal_places=6)

def __unicode__(self):
return self.name

但是当我运行 python manage.py syncdb 时,出现以下错误:

NameError: name 'Venue' is not defined

class Venue 在文件中时,为什么会这样?我做错了什么吗?我一直在关注 https://docs.djangoproject.com/en/1.5/intro/tutorial01/ 上的 Django 教程.

最佳答案

Venue 的定义移到 Event 的定义之前。原因是在定义 Venue 之前,Event 在其 ForeignKey 关系中引用了 Venue 类。

或者你可以这样做:

venue = models.ForeignKey('Venue')

关于python - 名称未在 Django 模型中定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18303406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com