当前位置:  开发笔记 > 编程语言 > 正文

PyCharm无法识别Django项目导入:来自my_app.models导入的东西

如何解决《PyCharm无法识别Django项目导入:来自my_app.models导入的东西》经验,为你挑选了1个好方法。

我刚刚开始在我现有的Django项目上测试PyCharm,它无法识别我项目中任何来自应用程序的导入:

my_app1/models.py:

from my_app2.models import thing

"未解决的参考'my_app2'"

为什么是这样?我的项目的目录结构与推荐的布局相匹配,并且运行没有错误,只是PyCharm的魔法不想对它起作用.

它似乎与这个问题有关: 在django项目中导入应用程序

但我无法弄清楚我做错了什么.如果我尝试:

from ..my_app2.models import thing

PyCharm错误消失了,它可以自动预测等等.但是当我运行项目时,Django抛出:

ValueError: attempted relative import beyond top-level package

编辑:

项目结构:

my_project/
   src/
      manage.py
      db.sqlite3
      my_app1/
         templates/
         __init.py__
         admin.py
         models.py
         urls.py
         views.py
         ...
      my_app2/
         templates/
         __init.py__
         admin.py
         models.py
         urls.py
         views.py
         ...
      my_project_app/
         settings/
         __init.py__
         urls.py
         ...

小智.. 49

我正在使用"2 Scoops of Django"项目布局来解决这个问题,例如

/project_root
    /project_dir
        /config
            /settings
        /my_app
            /tests
            models.py
    /requirements
    readme.rst

代码工作正常,但在/ tests中,IntelliJ/PyCharm显示了一个未解析的引用:

from my_app.models import Something

我有所有__init__.py文件.我最终必须将源根目录设置为project_dir:

右键单击project_dir,将Mark Directory标记为> Sources Root



1> 小智..:

我正在使用"2 Scoops of Django"项目布局来解决这个问题,例如

/project_root
    /project_dir
        /config
            /settings
        /my_app
            /tests
            models.py
    /requirements
    readme.rst

代码工作正常,但在/ tests中,IntelliJ/PyCharm显示了一个未解析的引用:

from my_app.models import Something

我有所有__init__.py文件.我最终必须将源根目录设置为project_dir:

右键单击project_dir,将Mark Directory标记为> Sources Root

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有