Django импорт с соседнего приложения
Перепробовал много вариантов тут, но не получается решить проблему.
структура:
|engine
|
|__controlcore|
| |_models.py (def test() )
|__siteapi____
| |_view.py (def prtn() )
|__engine
|
|manage.py
везде пустые __init.py__
мне нужно импортировать функцию test() из app controlcore в app siteapi/view.py
\engine\controlcore\models.py
def test ():
return 'меня передали'
\engine\siteapi\views.py
from ..controlcore.models import test
def prtn (request):
print(test())
вываливается ошибка:
from ..controlcore.models import test
ValueError: attempted relative import beyond top-level package
Ответы (1 шт):
Автор решения: Андрей Иванов
→ Ссылка
В общем, вчера совершенно случайно наткнулся на решение этой проблемы. Дело в том, что PyCharm по умолчанию не воспринимает директории верхнего уровня и для того, что бы явно задать ему эту директорию нужно сделать следующее: ПКМ на директорию верхнего уровня, в моём случае 'engine', Mark directory as - Source root. Теперь PyCharm видит другие app и даже сам экспортирует модули.