From 49e4a02150bbdf7fd7634a5e622835021e32957d Mon Sep 17 00:00:00 2001 From: Justin Edmund Date: Fri, 4 Mar 2022 05:14:36 -0800 Subject: [PATCH] Add update and info method on User --- app/controllers/api/v1/users_controller.rb | 22 ++++++++++++++++++---- app/views/api/v1/users/info.rabl | 3 +++ 2 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 app/views/api/v1/users/info.rabl diff --git a/app/controllers/api/v1/users_controller.rb b/app/controllers/api/v1/users_controller.rb index 013b777..b1ff491 100644 --- a/app/controllers/api/v1/users_controller.rb +++ b/app/controllers/api/v1/users_controller.rb @@ -2,6 +2,7 @@ class Api::V1::UsersController < Api::V1::ApiController class ForbiddenError < StandardError; end before_action :set, except: ['create', 'check_email', 'check_username'] + before_action :set_by_id, only: ['info', 'update'] def create @user = User.new(user_params) @@ -24,6 +25,15 @@ class Api::V1::UsersController < Api::V1::ApiController end end + + def update + render :info, status: :ok if @user.update(user_params) + end + + def info + render :info, status: :ok + end + def show if @user now = DateTime.current @@ -63,9 +73,6 @@ class Api::V1::UsersController < Api::V1::ApiController render :available end - def update - end - def destroy end @@ -76,7 +83,14 @@ class Api::V1::UsersController < Api::V1::ApiController @user = User.where("username = ?", params[:id]).first end + def set_by_id + @user = User.where("id = ?", params[:id]).first + end + def user_params - params.require(:user).permit(:username, :email, :password, :password_confirmation, :granblue_id) + params.require(:user).permit( + :username, :email, :password, :password_confirmation, + :granblue_id, :picture, :element, :language, :private + ) end end \ No newline at end of file diff --git a/app/views/api/v1/users/info.rabl b/app/views/api/v1/users/info.rabl new file mode 100644 index 0000000..b10685a --- /dev/null +++ b/app/views/api/v1/users/info.rabl @@ -0,0 +1,3 @@ +object @user + +extends 'api/v1/users/base' \ No newline at end of file