在我的Django项目LibraryManagement中,我有两个应用程序“ book”和“ authors”。我正在尝试使用外键在两个应用程序之间建立关系。当我尝试在书中导入类作者时,出现错误ModuleNotFound:没有名为“ LibraryManagement.authors”的模块
下面是我的项目结构
LMS
-LibraryManagement
-authors
-book
-LibraryManagement
-venv
作者应用中的models.py代码
from django.db import models
class Authors(models.Model):
author_name = models.CharField(max_length=100)
description = models.TextField(max_length=300)
图书应用中的models.py代码
from django.db import models
from LibraryManagement.authors.models import Authors
class Book(models.Model):
book_name = models.CharField(max_length=100)
author = models.ForeignKey(Authors)
remarks = models.TextField(max_length=300)
答案 0 :(得分:1)
您正在包中创建这些文件。 python中的软件包只能在其中的__init__.py
文件中使用。
因此,如果您希望能够做到:
from LibraryManagement.authors
LibraryManagement中必须有一个__init__.py
文件。在“作者”中也是如此。它必须有一个__init__.py
文件,因此您可以将其作为软件包导入。
__init__.py
文件可以为空,但必须存在。