diff --git a/main.py b/main.py index 1b89ec5..6db365e 100644 --- a/main.py +++ b/main.py @@ -63,11 +63,24 @@ def load_assets(): try: with open('assets_tw.json') as f: data_tw = json.load(f) + logger.info(f"Loaded assets_tw.json with {len(data_tw)} items") + except FileNotFoundError as e: + logger.warning(f"Assets file not found: {e}") + data_tw = {} + except Exception as e: + logger.error(f"Error loading assets_tw.json: {e}") + data_tw = {} + + if data_us is None: + try: with open('assets_us.json') as f: data_us = json.load(f) + logger.info(f"Loaded assets_us.json with {len(data_us)} items") except FileNotFoundError as e: - print(f"Warning: Assets file not found: {e}") - data_tw = {} + logger.warning(f"Assets file not found: {e}") + data_us = {} + except Exception as e: + logger.error(f"Error loading assets_us.json: {e}") data_us = {} def login_required(): @@ -234,6 +247,7 @@ def strategy(): else: flash('使用投組功能請先登入。', 'warning') return redirect(url_for('login')) + load_assets() # Ensure assets are loaded session['tw'] = 0 return render_template('strategy_tw.html', data_us = data_us, data_tw=data_tw, stock=['TSLA']) @@ -248,6 +262,7 @@ def strategy_tw(): else: flash('使用投組功能請先登入。', 'warning') return redirect(url_for('login')) + load_assets() # Ensure assets are loaded session['tw'] = 1 return render_template('strategy_tw.html', data_tw=data_tw, stock=['2330.TW']) @@ -625,6 +640,7 @@ def copy_portfolio(): return redirect(url_for('login')) if not 'tw' in session: return redirect(url_for('index')) + load_assets() # Ensure assets are loaded session['tw'] = 0 return render_template('strategy_tw.html', data_us = data_us, data_tw=data_tw, stock=session['currStockList'])