重構save代碼，測試還未通過