Module: Api::Scheme::Action
- Defined in:
- lib/api/scheme/action.rb
Constant Summary collapse
- SCHEME =
{ fetch_model_instances: { before: :index }, fetch_model_instance: { before: %i(show update destroy) }, init_model_instance: { before: :create } }
Class Method Summary collapse
Instance Method Summary collapse
- #create ⇒ Object
- #destroy ⇒ Object
- #fetch_model_instance ⇒ Object
- #fetch_model_instances ⇒ Object
- #index ⇒ Object
- #init_model_instance ⇒ Object
- #show ⇒ Object
- #update ⇒ Object
Class Method Details
.define_for(klass, name) ⇒ Object
55 56 57 58 |
# File 'lib/api/scheme/action.rb', line 55 def define_for klass, name method = self.instance_method(name) klass.send(:define_method, name, method) end |
Instance Method Details
#create ⇒ Object
24 25 26 27 28 |
# File 'lib/api/scheme/action.rb', line 24 def create model_instance.save! render_default_success({ model_key => model_instance }, status: :created) end |
#destroy ⇒ Object
36 37 38 39 40 |
# File 'lib/api/scheme/action.rb', line 36 def destroy model_instance.destroy! render_default_success({ model_key => model_instance }, status: :ok) end |
#fetch_model_instance ⇒ Object
46 47 48 |
# File 'lib/api/scheme/action.rb', line 46 def fetch_model_instance self.model_instance = model.find(params[:id]) end |
#fetch_model_instances ⇒ Object
42 43 44 |
# File 'lib/api/scheme/action.rb', line 42 def fetch_model_instances self.model_instances = model.all end |
#index ⇒ Object
16 17 18 |
# File 'lib/api/scheme/action.rb', line 16 def index render_default_success models_key => model_instances end |
#init_model_instance ⇒ Object
50 51 52 |
# File 'lib/api/scheme/action.rb', line 50 def init_model_instance self.model_instance = model.new(permitted_params) end |
#show ⇒ Object
20 21 22 |
# File 'lib/api/scheme/action.rb', line 20 def show render_default_success model_key => model_instance end |
#update ⇒ Object
30 31 32 33 34 |
# File 'lib/api/scheme/action.rb', line 30 def update model_instance.update!(permitted_params) render_default_success({ model_key => model_instance }, status: :ok) end |