Sha256: ed7770ddd07fb633fb9212fd4409b3d60555c7ca6d67d2a9fe69bf02ec60a7f3
Contents?: true
Size: 1.41 KB
Versions: 14
Compression:
Stored size: 1.41 KB
Contents
# frozen_string_literal: true module EIVO module Concerns module Resources extend ::ActiveSupport::Concern def index @objects ||= collection_index end def show @object ||= collection_show.find(params[:id]) end def new @object ||= collection.new end def create @object ||= collection.new @object.assign_attributes(object_params_create) if @object.save redirect_to action: :index else render :new end end def edit @object ||= collection.find(params[:id]) end def update @object ||= collection.find(params[:id]) @object.assign_attributes(object_params_update) if @object.update(object_params_update) redirect_to action: :index else render :edit end end def destroy @object ||= collection.find(params[:id]) @object.destroy redirect_to action: :index end protected def collection raise NotImplementedError end def collection_show collection end def collection_index collection end def object_params raise NotImplementedError end def object_params_create object_params end def object_params_update object_params end end end end
Version data entries
14 entries across 14 versions & 1 rubygems