example_run_app_answered
1from gevent import monkey 2monkey.patch_all() 3 4from hanabiapp import create_app, socketio 5import atexit 6import csv 7from hanabiapp import db 8from hanabiapp.models import user, game_info, pre_survey, participant, game_survey 9 10 11def run_app(): 12 """ 13 Hanabiアプリケーションを作成し,必要な初期データをデータベースに追加する関数. 14 各種アンケートは回答したものとして扱う. 15 16 アプリのコンテキストを作成し,データベースに `example_id_pass.csv` に記載された 17 ユーザー情報を登録する.既に登録済みのユーザーが存在する場合は,追加を行わない. 18 19 Returns: 20 Flask: 初期化された Flask アプリケーションオブジェクト 21 """ 22 app = create_app() 23 with app.app_context(): 24 existing_user = user.User.query.filter_by(username='user').first() 25 if not existing_user: 26 # ファイルを開いて読み込み 27 with open("example_id_pass.csv", mode='r', encoding='utf-8') as file: 28 reader = csv.reader(file) 29 for row in reader: 30 test_user = user.User(username=row[0]) 31 test_user.set_password(row[1]) 32 test_user.consent = True 33 test_user.pre_survey = True 34 db.session.add(test_user) 35 db.session.commit() 36 return app 37 38if __name__ == '__main__': 39 """ 40 Hanabiアプリケーションを起動するスクリプト. 41 42 `run_app()` を実行し,Flask-SocketIOを使用して 43 `0.0.0.0:5000` でアプリケーションを実行する. 44 """ 45 socketio.run(run_app(), host='0.0.0.0', port = '5000')
def
run_app():
12def run_app(): 13 """ 14 Hanabiアプリケーションを作成し,必要な初期データをデータベースに追加する関数. 15 各種アンケートは回答したものとして扱う. 16 17 アプリのコンテキストを作成し,データベースに `example_id_pass.csv` に記載された 18 ユーザー情報を登録する.既に登録済みのユーザーが存在する場合は,追加を行わない. 19 20 Returns: 21 Flask: 初期化された Flask アプリケーションオブジェクト 22 """ 23 app = create_app() 24 with app.app_context(): 25 existing_user = user.User.query.filter_by(username='user').first() 26 if not existing_user: 27 # ファイルを開いて読み込み 28 with open("example_id_pass.csv", mode='r', encoding='utf-8') as file: 29 reader = csv.reader(file) 30 for row in reader: 31 test_user = user.User(username=row[0]) 32 test_user.set_password(row[1]) 33 test_user.consent = True 34 test_user.pre_survey = True 35 db.session.add(test_user) 36 db.session.commit() 37 return app
Hanabiアプリケーションを作成し,必要な初期データをデータベースに追加する関数. 各種アンケートは回答したものとして扱う.
アプリのコンテキストを作成し,データベースに example_id_pass.csv
に記載された
ユーザー情報を登録する.既に登録済みのユーザーが存在する場合は,追加を行わない.
Returns:
Flask: 初期化された Flask アプリケーションオブジェクト