sys.argv[0]
не всегда самый надежный способ получить путь к текущему файлу. Я рекомендую эту модификацию:
pathname = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, pathname)
sys.path.insert(0, os.path.abspath(os.path.join(pathname, '..')))
Обратите внимание на использование sys.path.insert вместо sys.path.append и использование file . Кроме того, использование abspath
в файле -before- dirname
снижает вероятность того, что вы уменьшите все имя файла до пустой строки или просто '.' что может даже не быть точным.
Кроме того, пакет django установлен по одному из этих двух путей, которые вы добавляете? Если нет, то вам необходимо добавить этот путь
Наконец, незначительное замечание, возможно, не связанное с вашей проблемой импорта в django, но вы действительно должны это сделать:
os.environ['DJANGO_SETTINGS_MODULE'] = 'bandistry.settings'
Может работать без, но лучше, если вы положите все приложение django в пакет. Это уменьшает вероятность того, что вы затенете другие имена пакетов.