diff options
author | Teddy Wing | 2015-01-23 20:53:19 -0500 |
---|---|---|
committer | Teddy Wing | 2015-01-23 20:53:19 -0500 |
commit | 3ea39ca725e28f83fbea4a6ebaa037697cb8dde9 (patch) | |
tree | 2776273da20b726e008556816c40a00f1d1e28c8 | |
parent | 1d8d8322f0595dcf13f65e13c6ad4ec4bb2e410f (diff) | |
download | Notes-angular-demo-3ea39ca725e28f83fbea4a6ebaa037697cb8dde9.tar.bz2 |
Add actions to NotesController
* Create routes for notes actions
* Add actions to NotesController allowing us to interact with it
through a JSON API
-rw-r--r-- | app/controllers/notes_controller.rb | 32 | ||||
-rw-r--r-- | config/routes.rb | 55 |
2 files changed, 33 insertions, 54 deletions
diff --git a/app/controllers/notes_controller.rb b/app/controllers/notes_controller.rb index c94d2e3..7b9e4eb 100644 --- a/app/controllers/notes_controller.rb +++ b/app/controllers/notes_controller.rb @@ -1,2 +1,34 @@ class NotesController < ApplicationController + protect_from_forgery with: :null_session + + def index + render :json => Note.all.order(:created_at => :desc) + end + + def show + render :json => Note.find(params[:id]) + end + + def create + note = Note.create(note_params) + render :json => note + end + + def update + note = Note.find(params[:id]) + note.update(note_params) + render :json => note + end + + def destroy + note = Note.find(params[:id]) + note.destroy + render :json => note + end + + private + + def note_params + params.require(:note).permit(:title, :body) + end end diff --git a/config/routes.rb b/config/routes.rb index 3f66539..c5c7483 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,56 +1,3 @@ Rails.application.routes.draw do - # The priority is based upon order of creation: first created -> highest priority. - # See how all your routes lay out with "rake routes". - - # You can have the root of your site routed with "root" - # root 'welcome#index' - - # Example of regular route: - # get 'products/:id' => 'catalog#view' - - # Example of named route that can be invoked with purchase_url(id: product.id) - # get 'products/:id/purchase' => 'catalog#purchase', as: :purchase - - # Example resource route (maps HTTP verbs to controller actions automatically): - # resources :products - - # Example resource route with options: - # resources :products do - # member do - # get 'short' - # post 'toggle' - # end - # - # collection do - # get 'sold' - # end - # end - - # Example resource route with sub-resources: - # resources :products do - # resources :comments, :sales - # resource :seller - # end - - # Example resource route with more complex sub-resources: - # resources :products do - # resources :comments - # resources :sales do - # get 'recent', on: :collection - # end - # end - - # Example resource route with concerns: - # concern :toggleable do - # post 'toggle' - # end - # resources :posts, concerns: :toggleable - # resources :photos, concerns: :toggleable - - # Example resource route within a namespace: - # namespace :admin do - # # Directs /admin/products/* to Admin::ProductsController - # # (app/controllers/admin/products_controller.rb) - # resources :products - # end + resources :notes, :except => [:new, :edit] end |