Python Django循环导入错误,试图允许位置访问活动
导入错误:无法从部分初始化的模块“vacaplusapi.models.Activity”导入名称“Activity”(很可能是由于循环导入)(/Users/name/project/server/projectname/models/Activity.py) models/activity.pyPython Django循环导入错误,试图允许位置访问活动,python,django,Python,Django,导入错误:无法从部分初始化的模块“vacaplusapi.models.Activity”导入名称“Activity”(很可能是由于循环导入)(/Users/name/project/server/projectname/models/Activity.py) models/activity.py from django.db import models from .activity import Activity class Activity(models.Model): ac
from django.db import models
from .activity import Activity
class Activity(models.Model):
activity = models.OneToOneField(Activity, on_delete=models.CASCADE)
description = models.CharField(max_length=255,)
date = models.DateField(default="0000-00-00",)
photo = models.ImageField(upload_to=None, height_field=None, width_field=None, max_length=100)
models/location.py
- 从vacaplusapi.models导入活动
- 从vacaplusapi.models.vacauser导入vacauser
- 从django.db导入模型
- from.vacauser导入vacauser
不能从同一模块导入内容,因为此时模块正在加载。无论如何,你不需要这样做。您可以使用
'self'
字符串文字来引用相同的模型,因此:
from django.db import models
class Activity(models.Model):
activity = models.OneToOneField(
'self',
on_delete=models.CASCADE,
related_name='activity_reverse'
)
# …
来自django.db导入模型的
课堂活动(models.Model):
活动=models.OneToOneField(
“自我”,
在_delete=models.CASCADE上,
相关的\u name='activity\u reverse'
)
#…
但是,我不清楚为什么您使用
OneToOneField
从活动中引用活动
,因为此时模块正在加载。无论如何,你不需要这样做。您可以使用'self'
字符串文字来引用相同的模型,因此:
from django.db import models
class Activity(models.Model):
activity = models.OneToOneField(
'self',
on_delete=models.CASCADE,
related_name='activity_reverse'
)
# …
来自django.db导入模型的
课堂活动(models.Model):
活动=models.OneToOneField(
“自我”,
在_delete=models.CASCADE上,
相关的\u name='activity\u reverse'
)
#…
但是,我不清楚您为什么用OneToOneField
从活动中引用活动
,从.Activity导入活动
应该做什么?从.Activity导入活动
应该做什么?