Friday 15 March 2013

Ruby on Rails Form Calculator -



Ruby on Rails Form Calculator -

i build calculator app. before users saves record, should able input variables on form , nail "calculate" button see "how many units needs build something".

i created custom route:

get 'product_stock_calculator/:product_id', to: 'product_stocks#calculator'

model:

class productstock < activerecord::base ... end

controller:

class productstockscontroller < applicationcontroller ... def calculator @product_stock = productstock.new @product_stock.product_id = params[:product_id] end ... end

view:

product_stocks/calculator.html.erb <%= simple_form_for(@product_stock) |f| %> <div class="form-inputs"> <%= f.input :product_id, label: 'producto', collection: product.all, required: true %> <%= f.input :number_of_boxes, label: 'units build', required: true %> </div> <div class="form-actions"> <%= f.button :submit %> </div> <% end %>

how can submit form, create calculations , render view show calculation results without saving record?

same way anything.

you submit form route pointing controller action, perform calculations based on parameters.

for example:

routes.rb:

match '/calculate', "productstocks#calculate", via: 'post', as: :calculate

in controller:

def calculate @productstock = productstock.new(productstock_params) # strong parameters here @result = params[:productstock][:param1] * params[:productstock][:param2] # illustration render 'calculator' # render unsaved # new @producstock , can utilize @result in view end

and set form's action calculate_path

ruby-on-rails ruby simple-form

No comments:

Post a Comment