DawnC commited on
Commit
beb710a
1 Parent(s): 309504b

Update breed_recommendation.py

Browse files
Files changed (1) hide show
  1. breed_recommendation.py +13 -8
breed_recommendation.py CHANGED
@@ -214,12 +214,8 @@ def create_recommendation_tab(UserPreferences, get_breed_recommendations, format
214
  elem_id="recommendation-output"
215
  )
216
 
217
- def show_loading_status():
218
- return gr.HTML.update(visible=True)
219
-
220
  def on_find_match_click(*args):
221
  try:
222
- yield ["", gr.HTML.update(visible=True)]
223
  print("Starting breed matching process...")
224
  user_prefs = UserPreferences(
225
  living_space=args[0],
@@ -269,9 +265,9 @@ def create_recommendation_tab(UserPreferences, get_breed_recommendations, format
269
  results=history_results
270
  )
271
 
272
- yield [
273
  format_recommendation_html(recommendations, is_description_search=False),
274
- gr.HTML.update(visible=False)
275
  ]
276
 
277
  except Exception as e:
@@ -279,8 +275,18 @@ def create_recommendation_tab(UserPreferences, get_breed_recommendations, format
279
  import traceback
280
  print(traceback.format_exc())
281
  return ["Error getting recommendations", gr.HTML.update(visible=False)]
 
 
 
 
 
 
282
 
283
  get_recommendations_btn.click(
 
 
 
 
284
  fn=on_find_match_click,
285
  inputs=[
286
  living_space,
@@ -295,8 +301,7 @@ def create_recommendation_tab(UserPreferences, get_breed_recommendations, format
295
  children_age,
296
  noise_tolerance
297
  ],
298
- outputs=[recommendation_output, search_status],
299
- queue=True # 確保異步處理
300
  )
301
 
302
  return {
 
214
  elem_id="recommendation-output"
215
  )
216
 
 
 
 
217
  def on_find_match_click(*args):
218
  try:
 
219
  print("Starting breed matching process...")
220
  user_prefs = UserPreferences(
221
  living_space=args[0],
 
265
  results=history_results
266
  )
267
 
268
+ return [
269
  format_recommendation_html(recommendations, is_description_search=False),
270
+ gr.HTML.update(visible=False) # 隱藏搜尋狀態
271
  ]
272
 
273
  except Exception as e:
 
275
  import traceback
276
  print(traceback.format_exc())
277
  return ["Error getting recommendations", gr.HTML.update(visible=False)]
278
+
279
+ def update_status_and_process(*args):
280
+ return [
281
+ "", # 清空現有結果
282
+ gr.HTML.update(visible=True) # 顯示載入狀態
283
+ ]
284
 
285
  get_recommendations_btn.click(
286
+ fn=update_status_and_process, # 先更新狀態
287
+ outputs=[recommendation_output, search_status],
288
+ queue=False # 確保立即執行
289
+ ).then( # 然後執行主要處理
290
  fn=on_find_match_click,
291
  inputs=[
292
  living_space,
 
301
  children_age,
302
  noise_tolerance
303
  ],
304
+ outputs=[recommendation_output, search_status]
 
305
  )
306
 
307
  return {