0

私は一般的にWeb開発、特にRubyonRailsに不慣れです。同じメソッドで「Get」リクエストと「Post」リクエストを使用するWebインターフェイスの開発に取り組んでいます。getメソッドを使用してパラメーター(ユーザー名やパスワードなど)を送信すると、それらはURLに表示されます。したがって、以下は私がしたことです。

form1.html.erb

<%= form_for :modify, :method => "post", :url => {:action => "method2"} do |f|%>
#code here to input username and password
<%=end%>

私のroutes.rbで、method2への次のルートを記述しました。

post 'controller/method2'
get 'controller/method2'

入力username and passwordして送信をクリックするとpost 'method2'、コントローラーでコードを見つけて実行し、同じメソッドのがmethod2.html.erbありget request、method2のビューがあるので表示されます。

しかし、これは正しい方法ではないと思います。パスワードを表示したくありません。パスワードをセッションに保存するか、POSTリクエストを送信するかの2つのオプションがあることがわかりました。安全ではないのでセッションに保存したくありません。postメソッドを作成すると、ユーザーが戻ってきたときにページが期限切れになります。これらのいずれかが発生しないようにするために、コントローラーでpostおよびgetと同じアクションを使用しましたが、URLにパラメーターが表示されません。

これが正しい方法ではない場合はお知らせください

4

2 に答える 2

3

ユーザーとパスワードを操作するための確実な方法が必要な場合は、 Ruby on Rails チュートリアルを参照することをお勧めします。これは優れたチュートリアルであり、安全なユーザー名とパスワードの使用など、Rails プログラミングを開始するための基本を学習します。

または、この目的で非常に人気のあるGem であるDeviseを使用することもできます。

あなたが何をしているのかを本当に知らずに、安全なユーザー/パスワードシステムを実装しようとはしません...

于 2012-07-18T15:34:41.247 に答える
0

コントローラーには、次のものが必要です。

render 'controller/method2'

そして、このパスにファイルが必要です:

app/views/controller/method2.html.erb

2 つのルートを用意する必要はありません。

于 2012-07-18T15:35:23.467 に答える