今天不是再加一個獨立功能,而是確認前面幾天的功能能同時使用。
步驟 1:統一查詢參數
電影與遊戲路由都應該讀取:
keyword = request.args.get("q", "").strip()status = request.args.get("status", "")genre = request.args.get("genre", "").strip()sort = request.args.get("sort", "newest")
查詢的建構順序為:
最後再加上 Day 19 的白名單排序條件,執行:
items = connection.execute(query, params).fetchall()
步驟 3:確認表單在同一次送出保留所有條件
搜尋框、狀態、分類、排序都應該放在同一個 GET 表單內。
這樣使用者選擇「科幻」、「已看」,並輸入「星際」時,不會因為切換排序而失去搜尋條件。
步驟 4:測試情境
請至少測試以下五種情境: