和平
我得到了
ImportError:无法从“tenant_profile.models”导入名称“Tenant”
我想这是由于循环进口。
# models.py
from .serializers import TenantSerializer
class Tenant(models.Model):
# model fields
def save(self, *args, **kwargs):
_ = super().save(*args, **kwargs)
data = TenantSerializer(self).data
# do something
return _
# serializers.py
from .models import Tenant
class TenantSerializer(serializers.ModelSerializer):
class Meta:
model = Tenant
fields = '__all__'
字符串
一个Pythonic的方法来修复将是非常感谢的。
2条答案
按热度按时间7d7tgy0s1#
导入方法中的序列化程序:
字符串
axr492tv2#
在“models.py“和“serializers.py“之间循环导入所导致的错误,当两个或多个模块尝试相互导入时会发生这种情况。
在本例中,models.py正在从serializers.py导入TenantSerializer,serializers.py正在从“models.py”导入“Tenant”
要解决这个问题,您可以在model.py的保存函数中导入TenantSerializer:
字符串
我希望这对你有帮助。