关于错误:RuntimeError: Model class lufeiapi.apps.user.models.User doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS 的解决方案


from lufeiapi.apps.user.models import User   # 为什么会报错  即无法使用绝对路径

将上述代码改为相对路径即可!原因未知
from .models import User


上述的解决方案的前提是 在内部的apps.py里的设置如下所示:
from django.apps import AppConfig


class UserConfig(AppConfig):
name = 'user'
verbose_name = '用户中心'

上面是在同一app内导入模块,对应不同的app组件导入如何处理:
如下所示:在store这个app下的views.py 导入:
from midterm.apps.car.models import Site,Site_photo

会发现报错:如上所示



如果换种方式导入:
from ..car.models import Site,Site_photo

同样会报错:ValueError: attempted relative import beyond top-level package




最终解决方式如下:


  在同一app下,在apps.py 这样设置即可:
    
from django.apps import AppConfig


class UserConfig(AppConfig):
name = 'user'
verbose_name = '用户中心'

导入时,直接用相对导入即可 from .models import User



跨app导入时:
需要将被导入的app下的apps.py这样设置:
from django.apps import AppConfig


class UserConfig(AppConfig):
name = 'midterm.apps.user' //即在环境变量下一步一步的走到位
verbose_name = '用户中心'

使用该app下的模块时,直接用绝对路径即可 ; from midterm.apps.user.model import User

  



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM