This commit is contained in:
@@ -23,10 +23,22 @@ class UsersController < ApplicationController
|
||||
|
||||
def me
|
||||
user = User.find_by(inheritance_code: params[:code])
|
||||
render(if user
|
||||
{ json: user.slice(:id, :name, :inheritance_code, :role) }
|
||||
else
|
||||
{ json: { error: 'not found' }, status: :not_found }
|
||||
end)
|
||||
return head :not_found unless user
|
||||
|
||||
render json: user.slice(:id, :name, :inheritance_code, :role)
|
||||
end
|
||||
|
||||
def update
|
||||
user = current_user
|
||||
return head :unauthorized if user&.id != params[:id].to_i
|
||||
|
||||
name = params[:name]
|
||||
return head :bad_request if name.blank?
|
||||
|
||||
if user.update(name:)
|
||||
render json: user.slice(:id, :name, :inheritance_code, :role), status: :created
|
||||
else
|
||||
render json: user.errors, status: :unprocessable_entity
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -13,6 +13,7 @@ Rails.application.routes.draw do
|
||||
get 'wiki/:id', to: 'wiki_pages#show'
|
||||
post 'wiki', to: 'wiki_pages#create'
|
||||
put 'wiki/:id', to: 'wiki_pages#update'
|
||||
post 'users/code/renew', to: 'users#renew'
|
||||
|
||||
resources :posts
|
||||
resources :ip_addresses
|
||||
@@ -23,7 +24,7 @@ Rails.application.routes.draw do
|
||||
resources :tags
|
||||
resources :user_ips
|
||||
resources :user_post_views
|
||||
resources :users, only: [:create] do
|
||||
resources :users, only: [:create, :update] do
|
||||
collection do
|
||||
post :verify
|
||||
get :me
|
||||
|
||||
Reference in New Issue
Block a user