霡霂小雨 2022-05-25 13:52 采纳率: 100%
浏览 99
已结题

django引用自定义的模块,迁移时提示找不到

使用django编写项目时,引用自定义模块,在迁移时,提示找不到模块

代码如下

 from django.db import models
import sys

from perceptor.teachers.models import Teachers
sys.path.append('I:\\jiayong\\perceptor\\teachers\\models.py')

img

运行结果及报错内容


(venv) I:\jiayong\perceptor>python manage.py makemigrations
Traceback (most recent call last):
  File "manage.py", line 22, in <module>
    main()
  File "manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "I:\jiayong\venv\lib\site-packages\django\core\management\__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "I:\jiayong\venv\lib\site-packages\django\core\management\__init__.py", line 395, in execute
    django.setup()
  File "I:\jiayong\venv\lib\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "I:\jiayong\venv\lib\site-packages\django\apps\registry.py", line 114, in populate
    app_config.import_models()
  File "I:\jiayong\venv\lib\site-packages\django\apps\config.py", line 301, in import_models
    self.models_module = import_module(models_module_name)
  File "I:\python3.7.7\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "I:\jiayong\perceptor\course\models.py", line 4, in <module>
    from perceptor.teachers.models import Teachers
ModuleNotFoundError: No module named 'perceptor'

我的解答思路和尝试过的方法
尝试用sys更改路径,仍提示perceptor(文件名)找不到
尝试更改项目名,也提示perceptor(文件名)找不到
CTRL加左键点击perceptor可以找到相应的文件,点击Teachers可以找到对应的类

我想要达到的结果
可以正确迁移,生成数据库表

  • 写回答

1条回答 默认 最新

  • fizzyfly 2022-05-25 15:52
    关注

    实际上是找不到perceptor模块
    可以改成这样

    sys.path.append('I:\\jiayong')
    from perceptor.teachers.models import Teachers
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月3日
  • 已采纳回答 5月26日
  • 修改了问题 5月25日
  • 创建了问题 5月25日

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示