从其他应用程序导入类时发生ModuleNotFoundError

2024-09-27 23:20:45 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的django项目LibraryManagement中,我有两个应用程序“book”和“authors”。我正在尝试使用外键在两个应用程序之间建立关系。当我试图在书中导入类作者时,我发现错误ModuleNotFound:没有名为“LibraryManagement.Authors”的模块

下面是我的项目结构

LMS
 -LibraryManagement
   -authors
   -book
   -LibraryManagement
 -venv

来自authors应用程序的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)

Tags: 项目django代码frompyimport应用程序db
1条回答
网友
1楼 · 发布于 2024-09-27 23:20:45

您正在包中创建这些文件。python中的包仅在其内部有一个__init__.py文件的情况下工作。 因此,如果您希望能够做到:

from LibraryManagement.authors

LibraryManagement中必须有一个__init__.py文件。同样的情况也发生在“作者”身上。它必须有一个__init__.py文件,以便您可以将其作为包导入

__init__.py文件可以为空,但它们必须存在

相关问题 更多 >

    热门问题