2012-04-28 16 views
0

入力ボトムが選択されたときにparams[:id]に格納されている値をインクリメントしようとしており、ユーザがそのページにアクセスしたときに元の値を保存しています。これを達成するにはどうすればいいですか?コントローラビュー通信、Ruby on Rails

私は正常に値をインクリメントしましたが、元の値を格納する方法を確信していますか?

答えて

0

リクエスト間の「開始」の値には、いくつかの方法があります。 Matziが示唆しているように、リクエスト間のクエリ文字列の一部としてurlの値を保持することができます。

link_to "next", your_path(start: params[:start], count: (params[:count].to_i + 1)) 

また、コントローラからのユーザーのセッションに値を貼り付けできます。

session[:start] = params[:start] 

その後session[:start]でそれを取得します。

また、コントローラから、あなた自身の特別なクッキーでそれを突き出すことができます。

cookies[:start] = params[:start] 
# or 
cookies.permanent[:start] = params[:start] 

それとも永続化するデータのビットのために本当に重要だった場合は、データベースにparams[:start]を救うことができます。

あなたが正しい方向に向けるのを助けるための希望。

+0

それは本当に有益だった.......おかげで@Cade – rohitkadam19

+0

あなたは大歓迎です。それがあなたの頭の上にあなたを持っていれば、私の答えを受け入れることが大いに感謝されるでしょう! :) – Cade

+0

ちょっと@cade、あなたの答えを受け入れた。 – rohitkadam19

0

HTTPプロトコルはステートレスなプロトコルなので、使用する変数はDBまたはユーザーのいずれかから来なければなりません。リンクにstart_idを含める必要があります。

+0

はい、変数はDBから来ます。 – rohitkadam19