Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ======
- Schema
- ======
- create_table "logs", :force => true do |t|
- t.date "date"
- t.text "description"
- t.string "title"
- t.string "summary"
- t.integer "car_id"
- t.datetime "created_at"
- t.datetime "updated_at"
- t.integer "maintenance_id"
- t.integer "mileage"
- t.string "rtype"
- t.string "oil_brand"
- t.string "oil_type"
- t.string "oil_filter_type"
- end
- ======
- Models
- ======
- class Log < ActiveRecord::Base
- belongs_to :car
- has_and_belongs_to_many :tags
- set_inheritance_column :rtype
- def self.types
- v = Array.new()
- v.push(nil)
- v.push("OilChange")
- v.push("BrakePads")
- v.push("TimingBelt")
- return v
- end
- end
- class Car < ActiveRecord::Base
- has_many :logs
- end
- class OilChange < Log
- end
- ===========
- Controllers
- ===========
- # POST /logs
- # POST /logs.xml
- def create
- @log = Log.new(params[:log])
- @log.rtype = params[:log][:rtype]
- respond_to do |format|
- if @log.save
- flash[:notice] = 'Log was successfully created.'
- format.html { redirect_to(@log) }
- format.xml { render :xml => @log, :status => :created, :location => @log }
- else
- format.html { render :action => "new" }
- format.xml { render :xml => @log.errors, :status => :unprocessable_entity }
- end
- end
- end
- # GET /logs/new
- # GET /logs/new.xml
- def new
- @log = Log.new
- @m_types = Log.types
- @cars = Car.all
- print @maintenance
- if not params[:car].nil?
- @log.car = params[:car]
- end
- respond_to do |format|
- format.html # new.html.erb
- format.xml { render :xml => @log }
- end
- end
- ====
- View
- ====
- <h1>New log</h1>
- <% form_for(@log) do |f| %>
- <%= f.error_messages %>
- <p>
- <%= f.label :date %><br />
- <%= f.date_select :date %>
- </p>
- <p>
- <%= f.label :title %><br />
- <%= f.text_field :title %>
- </p>
- <p>
- <%= f.label :summary %><br />
- <%= f.text_field :summary %>
- </p>
- <p>
- <%= f.label :car %><br />
- <%= collection_select(:log, :car_id, @cars, :id, :name, {}, {}) %>
- </p>
- <p>
- <%= f.label :rtype %>
- <%= f.select :rtype, @m_types %>
- </p>
- <p>
- <%= f.label :description %><br />
- <%= f.text_area :description %>
- </p>
- <p>
- <%= f.submit 'Create' %>
- </p>
- <% end %>
- <%= link_to 'Back', logs_path %>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement