Django ForeignKey问题未找到相关类

bbr*_*oke 7 django foreign-keys django-models

我在我的模型中在名为"Activity"的类下创建了以下ForeignKey字段

related_workoutrecord = models.ForeignKey(WorkoutRecord, null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

ForeignKey与一个名为WorkoutRecord的类相关,该类应该被允许为空.

添加此列后,我运行South并收到以下错误消息:

NameError: name 'WorkoutRecord' is not defined
Run Code Online (Sandbox Code Playgroud)

对于发生了什么的任何想法?我已经确认'WorkoutRecord'是我模型中的一个类.

我是否需要将WorkoutRecord编写为字符串(带引号),例如:

related_workoutrecord = models.ForeignKey('WorkoutRecord', null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

我很感激反馈

Gly*_*son 12

根据我的评论,确保" 活动 " 类可以访问" WorkoutRecord " 类.

该错误意味着它所说的WorkoutRecord未在您的Activity类中定义.

首先检查这两件事:

1)你导入了吗?

2)在活动之前是否定义了WorkoutRecord?


小智 5

必须在Activity类之前(即上面)定义WorkoutRecord类,以便使用不带引号的类的引用.如果类之间存在循环引用,那么使用带引号的字符串版本将获得对代码中稍后定义的类的惰性引用.