2011-06-15 31 views
3

試圖在rails中使用form_tag helper提交到SSL地址。目前,我的代碼如下所示:Rails:強制窗體標籤使用HTTPS操作

form_tag(form_action_path) do 
# This spits out: 
<form action="form_action_path" method="post"> 

如果我試試這個:

form_tag(form_action_path, :protocol => 'https', :only_path => false) 
# It spits out: 
<form action="form_action_path" method="post" protocol="https" only_path="false> 

那是當然的,不是有效的或有價值的結果。我怎樣才能讓表單標籤助手渲染出一個https行動路徑?

謝謝。

回答

2

事實證明我使用的語法錯誤。

而不是

form_tag(form_action_path, :protocol => 'https') 

我需要

form_tag(form_action_url(:protocol => 'https')) 

的區別是,很顯然,這form_action_path產生類似 「/路徑/到/動作」 和form_action_url生成的「http:// URL .COM /路徑/到/動作「。

0

您可以在創建/更新操作中使用類似SSL_Requirement的東西。看起來SSL_Requirement比較舊(不是它需要更新,它不是非常複雜),但是現在可能會有一個更新的gem /插件。