Ruby On Rails - Framework Comparison

WebappFrameworkComparison / Scratchbook / RubyOnRails

Back to Snip <-- Previous Change | Next Change -->

Diff Summary
Title
Date 2007-11-18 13:29:25 2007-11-18 13:33:51
Editor Herbert Poul Herbert Poul
Tags

2007-11-18 13:29:25 by Herbert Poul
2007-11-18 13:33:51 by Herbert Poul
7373
74# Various Comments74# Various Comments
7575
76# Code Examples76# Code Examples
7777
tt78## Migration file
79
80    class Bar < ActiveRecord::Migration
81      def self.up
82        create_table :bars do |table|
83          table.column :name,         :string
84          table.column :location,     :text
85          table.column :wifi,         :integer # 1
 > - Yes, 2 - No, 3 - Paid
86          table.column :creationdate, :timestamp
87          table.column :editdate,     :timestamp
88        end
89      end
90    
91      def self.down
92        drop_table :bars
93      end
94    end
95
96## Model
97
98    class Bar < ActiveRecord::Base
99      has_and_belongs_to_many :beers
100      belongs_to :user
101    
102      has_many :comments
103    
104      validates_presence_of :name
105    
106      def wifi_descr
107        return "Yes" if wifi == 1
108        return "No" if wifi == 2
109        return "Paid" if wifi == 3
110      end
111          
112    end
113
114## Controller
115
116i show new/create here.. the exact same looks edit
 >/update
117
118      def new
119        @bar = Bar.new
120        @beers = Beer.find_all
121      end
122    
123      def create
124        @bar = Bar.new(params[:bar])
125        @bar.editdate = Time.now
126        @bar.beers = Beer.find(params[:beer_ids]) 
 >if params[:beer_ids]
127        @bar.user_id = current_user.id
128        if @bar.save
129          flash[:notice] = 'Bar was successfully c
 >reated.'
130          redirect_to :action => 'list'
131        else
132          render :action => 'new'
133        end
134      end
135
136## Template (View)
137
138this is the \_forms.rhtml template which is used t
 >o edit and create bars. it was 90% autogenerated
139
140    <%= error_messages_for 'bar' %>
141    
142    <!--[form:bar]-->
143    <p><label for="bar_name">Name</label><br/>
144    <%= text_field 'bar', 'name'  %></p>
145    
146    <p><label for="bar_location">Location</label><
 >br/>
147    <%= text_area 'bar', 'location'  %></p>
148    
149    <p><label for="bar_beers">Beers</label><br/>
150    <%= select 'bar', 'beer_ids', Beers.find_all.c
 >ollect { |b| [ b.name, b.id ] }, { }, { :multiple 
 >=> 'multiple' } %>
151    
152    <p><label for="bar_wifi">Wifi</label><br/>
153    <%= select 'bar', 'wifi', { 'Yes' => 1, 'No' =
 >> 2, 'Paid' => 3 } %></p>
154    <!--[eoform:bar]-->
155
156
78# Conclusion157# Conclusion

Personal website and blog of Herbert Poul. Also check out my Photo Gallery.




Herby's Photo Gallery

Subscriptions

User

You are not logged in.
Login
Register