我正在尝试将模型从另一个应用程序导入到某个应用程序中,但是会引发错误。
from django.db import models
from ..book.models import Book
class Cart:
books = models.ManyToManyField(Book)
错误:
ValueError: attempted relative import beyond top-level package
但如果我这样做:
from django.db import models
from book.models import Book
class Cart:
books = models.ManyToManyField(Book)
PyCharm将抱怨。上面写着“未解决的参考书”。
这还行不通:
from django.db import models
from shop.book.models import Book
class Cart:
books = models.ManyToManyField(Book)
错误:
ModuleNotFoundError: No module named 'shop.book'
答案 0 :(得分:0)
您应该尝试使用函数导入。
def make_it_im_port(self):
import(x)
然后调用该函数。
答案 1 :(得分:0)
确保book
作为应用程序存在于INSTALLED_APPS
内的settings.py
列表中
答案 2 :(得分:0)
使用以下代码时,您的代码可以正常工作。这是pycharm问题,您可以执行this
来解决pycharm问题from django.db import models
from book.models import Book
class Cart:
books = models.ManyToManyField(Book)