2011-06-26 77 views
1

我想在Rails 3.1中創建一個簡單的計算器表單,只是爲了理解。通過一個表單,我想獲得一個數字並將其乘以兩(例如)。簡單的計算器形式

我已經創建了索引頁面(/指數)控制器,然後形成意見:

<%= form_for @result do |f|%> 
<%= f.label :number, 'Number' %>: 
<%= f.text_field :number %> 
<%= submit_tag 'Submit' %> 
<%end%> 
<%[email protected]%> 

我需要控制器做什麼?

def index 
    @result = '' 
    end 
    def calculate 
    @result = @number.to_i*2 
    end 

回答

4

這不會工作。 form_for用於爲擴展ActiveRecord的模型構建表單。改爲使用form_tag('/calculate')

您需要在config/routes.rb中定義`match'calculate'=>'your_controller_name#calculate'。

此外,你需要一個視圖爲您計算行動 - calculate.html.erb(您可以採用不同稱呼它,但你必須指定render 'view_name'

另外,如果你想使用同一個視圖文件,使用render :action => :index

忘了提。 要從形式訪問數據,您使用params[:key]哈希值。 所以你的情況這看起來像@result = params[:number] * 2

This本書是開始使用Rails的好地方。

此外,these截屏是非常有益的太

2

萬一別人是要尋找軌計算器的例子......我一段時間,我自己後作一個現在,把小件一起從無處不在。結果是一個貨幣計算器應用程序,它從網上獲取新的匯率數據,並允許您將歐元轉換爲您想要的貨幣。

鏈接到github上的人誰可能是一個總的新人太多,想知道如何實現在軌計算器:https://github.com/Veske/form 還鏈接到的Heroku:http://harjutus.herokuapp.com