str2 = params['txt1']先ほど、パラメータの値を受け取ったのと全く同じです。フォームの送信も、paramsの中に整理されているのですね。ただし、今回はindexで普通にアクセスした時とフォーム送信をした時の両方の処理を行う必要がありますので、取得した変数str2がnilでなければ(つまり何かの値が送られてきたなら)変数@msgを設定するようにしてあります。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※index.html.erb <h1>Helo#index</h1> <p><%= @msg %></p> <hr> <form method="post" action="./index"> <input type="text" id="txt1" name="txt1"> <input type="submit"> </form> ※indexメソッド def index str = "テキストを入力。" str2 = params['txt1'] if str2 != nil then str = "あなたは、「" + str2 + "」と書きました。" end @msg = str end ※routes.rbの修正 Tuyano01::Application.routes.draw do get "helos/index" post "helos/index" #★これを追加 ……以下略……
<< 前へ |