Skip to content

Instantly share code, notes, and snippets.

@mootpointer
Created May 6, 2015 02:28
Show Gist options
  • Save mootpointer/9b02b3fbe76ede1b2feb to your computer and use it in GitHub Desktop.
Save mootpointer/9b02b3fbe76ede1b2feb to your computer and use it in GitHub Desktop.

Revisions

  1. mootpointer created this gist May 6, 2015.
    27 changes: 27 additions & 0 deletions update_user.rb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,27 @@
    require 'active_support/core_ext/hash/slice'

    module MyCompany
    module Services
    class UpdateUser
    attr_reader :user, :params
    def initialize user, params
    @user, @params = user, params
    end

    def allowed_params
    [
    "first_name", "last_name", "avatar_url", "email"
    ]
    end

    def cleaned_params
    @params.slice(*allowed_params)
    end

    def call
    user.update!(cleaned_params)
    end

    end
    end
    end