fixed 修改用户参数错误

This commit is contained in:
xxqfamous 2023-05-30 12:34:09 +08:00
commit 818781f6e0
3 changed files with 5 additions and 4 deletions

View File

@ -9,7 +9,7 @@ class AccountsController < ApplicationController
simple_update_params.merge!(username: params[:username]&.gsub(/\s+/, ""))
simple_update_params.merge!(email: params[:email]&.gsub(/\s+/, ""))
simple_update_params.merge!(platform: (params[:platform] || 'forge')&.gsub(/\s+/, ""))
simple_update_params.merge!(user: current_user)
simple_update_params.merge!(user_id: current_user.id)
Register::RemoteForm.new(simple_update_params).validate!
ActiveRecord::Base.transaction do
@ -29,7 +29,7 @@ class AccountsController < ApplicationController
# 其他平台同步注册的用户
def remote_register
remote_register_params.merge!(user: nil)
remote_register_params.merge!(user_id: nil)
Register::RemoteForm.new(remote_register_params).validate!
username = params[:username]&.gsub(/\s+/, "")
tip_exception("无法使用以下关键词:#{username},请重新命名") if ReversedKeyword.check_exists?(username)

View File

@ -1,12 +1,13 @@
module Register
class RemoteForm < Register::BaseForm
# login 登陆方式,支持邮箱、登陆、手机号等
attr_accessor :username, :email, :password, :platform, :user
attr_accessor :username, :email, :password, :platform, :user_id
validates :username, :email, :password, presence: true
validate :check!
def check!
user = User.find_by(id: user_id)
Rails.logger.info "Register::RemoteForm params: id: #{user&.id}; username: #{username}; email: #{email}; password: #{password}; platform: #{platform}"
check_login(username, user)
check_mail(email,user)

View File

@ -45,7 +45,7 @@ class Admins::ImportUserFromExcelService < ApplicationService
password = data.password
nickname = data.nickname&.gsub(/\s+/, "")
raise Error, "无法使用以下关键词:#{username},请重新命名" if ReversedKeyword.check_exists?(data.login)
Register::RemoteForm.new({username: username, email: email, password: password, platform: 'forge', user: nil}).validate!
Register::RemoteForm.new({username: username, email: email, password: password, platform: 'forge', user_id: nil}).validate!
user = User.new(admin: false, login: username, mail: email, nickname: nickname, platform: 'forge' , type: "User")
user.password = password
user.activate