示例#1
0
文件: user.go 项目: jeff235255/forum
func (r *resourceUser) Edit(id string, u *models.User) error {
	if !bson.IsObjectIdHex(id) {
		return apiErrors.ThrowError(apiErrors.IdInvalid)
	}
	u.Id = ""
	if err := collection(userColName).UpdateId(bson.ObjectIdHex(id), u); err != nil {
		if err == mgo.ErrNotFound {
			return apiErrors.ThrowError(apiErrors.UserNotFound)
		}
		panic(err)
	}
	return nil
}
示例#2
0
文件: user.go 项目: oblank/forum
func (r *resourceUser) Create(u *models.User) error {
	if u.Password == "" {
		return apiErrors.ThrowError(apiErrors.UserPasswordRequired)
	}
	u.Password = r.HashPassword(u.Password)
	u.Id = bson.NewObjectId()
	u.Role = models.NormalUser
	if err := collection(userColName).Insert(u); err != nil {
		if mgo.IsDup(err) {
			return apiErrors.ThrowError(apiErrors.UserExist)
		}
		panic(err)
	}

	return nil
}