PyCharm can't find the right paths if I open a directory that is not the Django root

Question:

Our projects are usually structured:

/project-name
  /src
    /django-project-name
      etc..
readme.md
requirements.txt

If I open /project-name instead of /django-project-name PyCharm underlines my imports saying they can’t find and it tries to reference imports as src.django-project-name.app_name.models.Thing which can’t actually be found when you run Django.

How can I get it to work the same as when I mount /djang-project-name where it gets these things right?

Asked By: Kit Sunde

||

Answers:

Python requires an __init__.py file in each directory that is a module or part of the project, in pycharm you can add extra paths via preferences

Answered By: Hedde van der Heide

I fixed it by going to File -> Preferences -> Project Structure selecting the /django-project-name in the tree and clicking sources to add it.

Answered By: Kit Sunde

I had an issue with PyCharm not finding the templates folder for an existing Django project. So I created a test project and saw that the template folder setting is only added when setting up the project (it should be in project-root/.idea/project-name.iml)

Copying the same setting and changing the folder to the correct one fixed the issue for me.

Answered By: victor n.
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.