From 9cf16705485b4bfc3fb3ffc03de326fd5765048e Mon Sep 17 00:00:00 2001 From: Benature Date: Mon, 27 Nov 2023 22:26:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E8=AF=86=E5=88=AB=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WordReview/config.py | 22 ++++++++++++++++--- WordReview/manage.py | 16 +++++++------- .../requirements.txt => requirements.txt | 2 +- 3 files changed, 28 insertions(+), 12 deletions(-) rename WordReview/requirements.txt => requirements.txt (90%) diff --git a/WordReview/config.py b/WordReview/config.py index b062d40f..695ad823 100644 --- a/WordReview/config.py +++ b/WordReview/config.py @@ -1,6 +1,7 @@ __all__ = ['config'] import configparser +from pathlib import Path import os default_dict = { @@ -8,8 +9,23 @@ 'auto_open_browser': 'yes', } +_project_dir = Path(__file__).parent +_config_file_path = _project_dir / 'config.conf' + + +def check_config_file_exists(): + if not os.path.exists(_config_file_path): + from shutil import copyfile + print("【步骤遗漏!】还没有复制配置文件哦...") + copyfile(_project_dir / "config_sample.conf", _config_file_path) + print( + f'但我已经帮你复制好了:\n{_project_dir / "config_sample.conf"} -> {_config_file_path}' + ) + print("继续往下走吧~") + + +check_config_file_exists() + config = configparser.ConfigParser(default_dict) # print(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.conf')) -config.read(os.path.join( - os.path.dirname(os.path.abspath(__file__)), - 'config.conf'), encoding='utf-8') +config.read(_config_file_path, encoding='utf-8') diff --git a/WordReview/manage.py b/WordReview/manage.py index bade5d4f..2b5a0081 100755 --- a/WordReview/manage.py +++ b/WordReview/manage.py @@ -32,7 +32,7 @@ def lock_system_port(_port): serv = listener.accept() # just bind the port. t = Thread(target=lock_system_port, args=(62771, )) - t.setDaemon(True) + t.daemon = True t.start() del t return q.get() @@ -48,8 +48,8 @@ def enable_browser_with_delay(argv, _t=None): if subcommand == 'runserver' and '--noreload' not in argv: try: parser_port = argv[2] - port_with_colon = parser_port[ - parser_port.index(":"):] if ':' in parser_port else ":" + parser_port + port_with_colon = parser_port[parser_port.index( + ":"):] if ':' in parser_port else ":" + parser_port except (IndexError, ValueError): port_with_colon = ":8000" finally: @@ -71,13 +71,13 @@ def main(): raise ImportError( "Couldn't import Django. Are you sure it's installed and " "available on your PYTHONPATH environment variable? Did you " - "forget to activate a virtual environment?" - ) from exc + "forget to activate a virtual environment?") from exc - if Is_child_processing() and config.getboolean('custom', 'auto_open_browser'): + if Is_child_processing() and config.getboolean('custom', + 'auto_open_browser'): import threading - t = threading.Thread( - target=enable_browser_with_delay, args=(sys.argv, 1)) + t = threading.Thread(target=enable_browser_with_delay, + args=(sys.argv, 1)) t.start() del t diff --git a/WordReview/requirements.txt b/requirements.txt similarity index 90% rename from WordReview/requirements.txt rename to requirements.txt index 55ef3a14..23b3c72a 100644 --- a/WordReview/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ django-sass-processor==0.8 libsass==0.19.4 mysqlclient==1.4.6 pymysql==0.9.3 -pypugjs==5.8.1 +pypugjs==5.9.12 django-compressor xlrd pandas