ValueError: попытка относительного импорта за пределы пакета верхнего уровня, миграции Django - PullRequest
0 голосов
/ 07 февраля 2020

Схожу с ума от этой ошибки. У меня есть каталог с файлами:

backend
 - backend
    - file1
    - file2
 - restaurant
    - models
 - users
    - file4
 - manage.py

В Django У меня есть импорт в file4 следующим образом from ..restaurant.file3 import Restaurant. Это прекрасно работает в Django, он знает, что и где Restaurant. Проблема в том, что когда я запускаю python manage.py makemigrations, я получаю ошибку ValueError: attempted relative import beyond top-level package .

Я попытался поместить весь пакет в другой пакет верхнего уровня, который также содержал файл manage.py, чтобы он выглядел, но это не сработало.

toplevel
    backend
     - backend
        - file1
        - file2
     - restaurant
        - models
     - users
        - file4
     - manage.py

Я перепробовал каждый синтаксис и продолжаю получать ту же ошибку. Я добавил init .py файлы везде, а затем удалил их везде. Я чувствую, что это не должно быть так сложно. Я помню в Python2 Клянусь, я мог бы просто сделать ..restaurants, и это будет работать нормально.

...