2016-04-10 52 views
-1

我有非常簡單的HTML(password.html.erb):ROR:HTML輸入按鈕不張貼到控制器?

<h1>Enter business password to enter:</h1> 

<input type="text" id="password" name="enter password"/> 
<input type="submit" method="post" name="Submit"/> 

這應該,對提交的點擊,引發我的控制器的動作稱爲 '檢查':

def check 
    @entered = params['password'] 
    if @entered == current_customer.business.manager_password_digest 
     puts("success!") 
     redirect to '/manage' 
    else 
     flash[:danger] = 'Invalid password' 
     render 'password' 
    end 
    end 

這裏我的路線:

get '/password' => 'pages#password' 
    post '/password' => 'pages#check' 

但是,當我點擊提交,沒有任何反應。以這種方式使用輸入是不可能的?

回答

1

您應該使用Rails的helper,你需要指定的路徑要發佈的數據:

<h1>Enter business password to enter:</h1> 
<%= form_tag("/password") do %> 
<%= text_field_tag :password %> 
<%= submit_tag 'Submit' %> 
<% end %> 
1

你沒有告訴你的按鈕上點擊執行哪個動作。爲此,您應該使用提交按鈕的操作。

<h1>Enter business password to enter:</h1> 
    <input type="text" id="password" name="enter password"/> 
    <input type="submit" method="post" name="Submit"/ action = '/password'> 
+0

@dkp:請標記爲接受:) – ashwintastic