Module: BTech::Rest::Actions
- Included in:
- BTech::Rest
- Defined in:
- lib/actions.rb
Instance Method Summary collapse
-
#create ⇒ Object
Default create action.
-
#destroy ⇒ Object
Default destroy action.
-
#edit ⇒ Object
Default edit action.
-
#index ⇒ Object
Default index action.
-
#new ⇒ Object
Default new action.
-
#show ⇒ Object
Default show action.
-
#update ⇒ Object
Default update action.
Instance Method Details
#create ⇒ Object
Default create action. Feel free to override.
39 40 41 42 43 44 45 46 |
# File 'lib/actions.rb', line 39 def create build_resources if get_record.update_attributes params[get_model_symbol] redirect_to build_resource_url(@resources) else render_new_or_edit end end |
#destroy ⇒ Object
Default destroy action. Feel free to override.
59 60 61 62 63 64 |
# File 'lib/actions.rb', line 59 def destroy build_resources get_record.destroy @resources.last.delete :record redirect_to build_resource_url(@resources) end |
#edit ⇒ Object
Default edit action. Feel free to override.
33 34 35 36 |
# File 'lib/actions.rb', line 33 def edit build_resources render_new_or_edit end |
#index ⇒ Object
Default index action. Feel free to override.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/actions.rb', line 5 def index build_resources if @resources.size > 1 # Records for a nested resource (act on the second-to-last parent). parent = @resources[@resources.size - 2][:record] records_name = parent.class.name.underscore.pluralize records = parent.instance_eval("#{@resources.last[:parent_resource_method] || @resources.last[:name]}").paginate :page => params[:page], :per_page => 10 else # Records for single resource. records_name = get_model_name.pluralize records = @resources.last[:model].all.paginate(:page => params[:page], :per_page => 10) end instance_variable_set "@#{records_name}", records end |
#new ⇒ Object
Default new action. Feel free to override.
27 28 29 30 |
# File 'lib/actions.rb', line 27 def new build_resources render_new_or_edit end |
#show ⇒ Object
Default show action. Feel free to override.
21 22 23 24 |
# File 'lib/actions.rb', line 21 def show build_resources render :partial => @resources.last[:show_partial], :layout => true, :locals => {get_model_symbol => get_record, :resources => @resources} end |
#update ⇒ Object
Default update action. Feel free to override.
49 50 51 52 53 54 55 56 |
# File 'lib/actions.rb', line 49 def update build_resources if get_record.update_attributes params[get_model_symbol] redirect_to build_resource_url(@resources) else render_new_or_edit end end |