aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2015-01-23 20:53:19 -0500
committerTeddy Wing2015-01-23 20:53:19 -0500
commit3ea39ca725e28f83fbea4a6ebaa037697cb8dde9 (patch)
tree2776273da20b726e008556816c40a00f1d1e28c8
parent1d8d8322f0595dcf13f65e13c6ad4ec4bb2e410f (diff)
downloadNotes-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.rb32
-rw-r--r--config/routes.rb55
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