UnsupportedOperation: недоступно для записи при попытке запустить сервер приложений Python - PullRequest
0 голосов
/ 26 июня 2018
 if __name__ == '__main__':
    app.run_server()

Всякий раз, когда я пытаюсь выполнить приведенный выше код, появляется следующая ошибка:

UnsupportedOperation                      Traceback (most recent call last)
<ipython-input-10-8f09ac2c0de3> in <module>()
    213 
    214 if __name__ == '__main__':
--> 215     app.run_server()

C:\ProgramData\Anaconda3\lib\site-packages\dash\dash.py in run_server(self, port, debug, **flask_run_options)
    566                    debug=False,
    567                    **flask_run_options):
--> 568         self.server.run(port=port, debug=debug, **flask_run_options)

C:\ProgramData\Anaconda3\lib\site-packages\flask\app.py in run(self, host, port, debug, load_dotenv, **options)
    936         options.setdefault('threaded', True)
    937 
--> 938         cli.show_server_banner(self.env, self.debug, self.name, False)
    939 
    940         from werkzeug.serving import run_simple

C:\ProgramData\Anaconda3\lib\site-packages\flask\cli.py in show_server_banner(env, debug, app_import_path, eager_loading)
    627             message += ' (lazy loading)'
    628 
--> 629         click.echo(message)
    630 
    631     click.echo(' * Environment: {0}'.format(env))

C:\ProgramData\Anaconda3\lib\site-packages\click\utils.py in echo(message, file, nl, err, color)
    257 
    258     if message:
--> 259         file.write(message)
    260     file.flush()
    261 

UnsupportedOperation: not writable

Здесь я подключаюсь к базе данных сервера MySQL, которая подключается точно в соответствии с учетными данными. Запрос выполняется и успешно считывается в информационный фрейм. Но когда я пытаюсь запустить сервер, как указано выше в строке 1,2, он отображает эту ошибку.

Когда я запускаю этот код на компьютере моего коллеги, сервер размещается. Я пытался использовать несколько IDE, таких как PyCharm, Rodeo, Jupyter Notebook и т. Д., Но все они дали мне ту же ошибку.

Я использую Python 3.6, Пожалуйста, помогите мне решить эту ошибку.

1 Ответ

0 голосов
/ 26 августа 2018

Обходной путь можно найти здесь: https://github.com/plotly/dash/issues/257

Есть два варианта:

  1. Перейти к '... / Anaconda3 / lib / site-пакеты / click / ' и отредактируйте два * .py скрипта

utils.py script

редактируйте функцию эха

Строка 166 показывает: def echo(message=None, file=None, nl=True, err=False,color=None):

изменить на def echo(message=None, file=sys.stdout, nl=True, err=False,color=None):

сценарий termui.py

изменить функцию эха

В строке 408 показано: def secho(text, file=None, nl=True, err=False,color=None, **styles):

изменить на def secho(text, file=sys.stdout,nl=True, err=False, color=None, **styles):

Колба для понижения : conda install flask=0.12.2
...