Advertisement
oquidave

implementing delete using rails

Oct 30th, 2012
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rails 2.47 KB | None | 0 0
  1. //routes
  2. oquisuse:/home/oquidave/Documents/devp/ruby/outbox # rake routes
  3.     events GET    /events(.:format)          events#index
  4.            POST   /events(.:format)          events#create
  5.  new_event GET    /events/new(.:format)      events#new
  6. edit_event GET    /events/:id/edit(.:format) events#edit
  7.      event GET    /events/:id(.:format)      events#show
  8.            PUT    /events/:id(.:format)      events#update
  9.            DELETE /events/:id(.:format)      events#destroy
  10.  
  11. //controller
  12. class EventsController < ApplicationController
  13.  
  14.   def new
  15.     #puts params.inspect
  16.     #shows the create new event form
  17.     render :new
  18.   end
  19.  
  20.   def create
  21.     event = Event.create(:title=>params["title"], :tickets=>params["tickets"])
  22.     if event.valid?
  23.       event.save()
  24.       #you have to redirect to avoid false entering of data on refreshing
  25.       #render :text => "values added successfully"
  26.       #redirect_to "http://localhost:3000/events/new"
  27.       #redirect_to "/events/new"
  28.       #redirect_to new_event_url #copied from rake routes returns absolute path
  29.       redirect_to new_event_path #relative path
  30.       #redirect_to event_path
  31.     else
  32.       #render :text => "failed to add values"
  33.       render :new
  34.     end
  35.   end
  36.  
  37.   def index
  38.     @events = Event.all
  39.   end
  40.  
  41.   def show
  42.     #show all the entries in the db
  43.     @event = Event.find(params[:id])
  44.   end
  45.  
  46.   def edit
  47.     #@event = Event.last
  48.     @event = Event.find(params[:id])
  49.     render :edit
  50.   end
  51.  
  52.   def update
  53.     #update the values in the db
  54.     event = Event.find(params[:id])
  55.     #require 'pp'; pp params[:event]
  56.     event.update_attributes(params[:event])
  57.     event.save
  58.  
  59.     render :text => "updated"
  60.  
  61.   end
  62.  
  63.   def destroy
  64.     event = Event.find(params[:id])
  65.     event.delete()
  66.   end
  67.  
  68.  
  69. end
  70.  
  71. //view(index.html.erb)
  72. <p>showing all entries</p>
  73. Title : Ticket : Action <br>
  74. <% for event in @events %>
  75.  <%= event.title %>
  76.  <%=event.tickets %>
  77.  <a href= "/events/<%= event.id %>" >Delete </a>
  78.  <br>
  79. <% end %>
  80.  
  81. //html broswer source code
  82. <p>showing all entries</p>
  83. Title : Ticket : Action <br>
  84.  david
  85.  16
  86.  <a href= "/events/2" >Delete </a>
  87.  <br>
  88.  david
  89.  12
  90.  <a href= "/events/3" >Delete </a>
  91.  <br>
  92.  david
  93.  12
  94.  <a href= "/events/4" >Delete </a>
  95.  <br>
  96.  david
  97.  13
  98.  <a href= "/events/5" >Delete </a>
  99.  <br>
  100.  david
  101.  15
  102.  <a href= "/events/6" >Delete </a>
  103.  <br>
  104.  charles
  105.  12
  106.  <a href= "/events/7" >Delete </a>
  107.  <br>
  108.  peter
  109.  15
  110.  <a href= "/events/8" >Delete </a>
  111.  <br>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement