Reputation: 191
My Python IDE (pycharm) has stopped auto completing my modules (suggestions). I get unresolved references after every django module I try to import so:
from django
- works, however soon as I add a 'dot' it fails so from django.db import models
gives me unresolved errors...
The ackward thing is after compiling references DO work.
I discovered that all my __init__.py
files (everywhere) no longer are marked with python icon and are now notepad icons. Also opening init files in my interpreter gives non-color marked up text (no syntax highlighting). So I think Python doens't recognizes these files.
My python interpreter is python 2.6.1 with Django 1.2.4 and my django is installed under:
/Lib/python/2.6/site-packages
(full directories, not egg)
When I unfold sitepackages from external libraries within the IDE I do see colored mark up for all .py files EXCEPT __init__.py
files. Hence thats where the issue lives.
(I have found posts on google for similar problems but no answers...)
Upvotes: 19
Views: 16338
Reputation: 747
File--> setting--> project:your_project_name --> python interperter
change python interpreter
Upvotes: -2
Reputation: 1
you should just change your project interpreter if it is using anaconda or etc to standard python interpreter which may be located in this path (C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\python.exe)
Upvotes: 0
Reputation: 159
GOTO File > Settings > Langauges & Frameworks > Python Template languages
Select Django in the Template language drop-down.
Jetbrains Docs > Python Template Languages
Upvotes: 13
Reputation: 1023
I worked out this fix:
Upvotes: 3
Reputation: 2285
Nothing here worked for me but Enabling Django support in the settings did:
Upvotes: 12
Reputation: 49
Trivial solution that worked for me: start a new django project using pycharm project options. Try auto-completing using a django import module. If it works, switch back to your original project and auto-complete should be working fine.
I still don't understand why this works.
Upvotes: 2
Reputation: 213
I had exactly the same issue and couldn't find a definitive answer. Just invalidating caches didn't work for me. The problem lies in the fact that, at some point, __init__.py
files got registered as text files and messed up the indexing. I worked out this fix:
__init__.py
from the list of registered patterns. Apply.Upvotes: 21