檢查用戶名和郵箱是否被佔用
This commit is contained in:
		@@ -44,6 +44,21 @@ func UsersPost(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
		Password: fmt.Sprintf("%x", md5.Sum([]byte(form["password"].(string)+slat))),
 | 
			
		||||
		Slat:     slat,
 | 
			
		||||
	}
 | 
			
		||||
	// 檢查郵箱是否已經存在, 郵箱不能重複
 | 
			
		||||
	var count int64
 | 
			
		||||
	configs.ORMDB().Model(&models.User{}).Where("email = ?", user.Email).Count(&count)
 | 
			
		||||
	if count > 0 {
 | 
			
		||||
		w.WriteHeader(http.StatusBadRequest)
 | 
			
		||||
		w.Write([]byte("400 - email already exists"))
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	// 檢查用戶名是否已經存在, 用戶名不能重複
 | 
			
		||||
	configs.ORMDB().Model(&models.User{}).Where("name = ?", user.Name).Count(&count)
 | 
			
		||||
	if count > 0 {
 | 
			
		||||
		w.WriteHeader(http.StatusBadRequest)
 | 
			
		||||
		w.Write([]byte("400 - name already exists"))
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	// 寫入數據庫
 | 
			
		||||
	if err := configs.ORMDB().Create(&user).Error; err != nil {
 | 
			
		||||
		w.WriteHeader(http.StatusBadRequest)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user