Browse Source

fixed 修改用户参数错误

pull/343/head
xxqfamous 3 years ago
parent
commit
dbdd2f8968
3 changed files with 8 additions and 6 deletions
  1. +4
    -3
      app/controllers/accounts_controller.rb
  2. +3
    -2
      app/forms/register/remote_form.rb
  3. +1
    -1
      app/services/admins/import_user_from_excel_service.rb

+ 4
- 3
app/controllers/accounts_controller.rb View File

@@ -8,7 +8,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
@@ -28,7 +28,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)
@@ -180,7 +180,8 @@ class AccountsController < ApplicationController
render_result(-6, e.message)
rescue Exception => e
Gitea::User::DeleteService.call(user.login) unless user.nil?
uid_logger_error(e.message)
Rails.logger.error("##:register error--#{user.try(:id)}")
logger_error(e)
tip_exception(-1, e.message)
end
end


+ 3
- 2
app/forms/register/remote_form.rb View File

@@ -1,13 +1,14 @@
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!
Rails.logger.info "Register::RemoteForm params: username: #{username}; email: #{email}; password: #{password}; platform: #{platform}"
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)
check_password(password)


+ 1
- 1
app/services/admins/import_user_from_excel_service.rb 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


Loading…
Cancel
Save