Приложение говорит, что модуль не найден после перемещения в каталог - PullRequest
0 голосов
/ 14 января 2019

Я довольно новичок в python и имею эту странную проблему, на которую не могу найти ответ.

Когда app.py и mod_db были в корневом каталоге, это работает, но когда я переместил их в подкаталог

Моя структура каталогов:

demo_api
|
|-- demo-api
    |
    |-- __init__.py
    |-- app.py
    |-- mod_db.py

Мой основной модуль

import json

from flask import Flask, request, Response
from .db_mod import insert_and_score

app = Flask(__name__)


@app.route('/')
def hello_world():
    return 'Hello World!'


@app.route('/emotional_scoring', methods=['POST'])
def get_scoring():
    json_obj = request.json
    ret_json = insert_and_score(json_obj)
    resp = Response(json.dumps(ret_json), mimetype='application/json', status=200)
    return resp


if __name__ == '__main__':
    app.run(host='0.0.0.0', debug=False)

Сообщение об ошибке находится на этой строке

from .mod_db import insert_and_score

Я пытался изменить имя подкаталога. Я попытался сделать полный путь, то есть из demo_app.mod_db import insert_and_score, и ошибка: ModuleNotFoundError: нет модуля с именем 'demo_app'

Проблема в том, что он работает, находят в моей IDE (PyCharm), но когда я делаю это в командной строке, это ошибки, с которыми я сталкиваюсь.

1 Ответ

0 голосов
/ 14 января 2019

Как заявил mfrackowiak, мне просто нужно было изменить его на

from db_mod import insert_and_score

и это сработало. Но PyCharm это не нравится. Поэтому я думаю, что это может быть проблема PyCharm.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...