0

params[:id]入力ボタンが選択されたときに保存された値をインクリメントし、ユーザーがページにアクセスしたときに元の値を保存しようとしています。これを達成するためにどのようにアプローチしますか?

値を正常にインクリメントしましたが、元の値を保存する方法がわかりませんか?

4

2 に答える 2

0

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

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

コントローラからユーザーのセッションに値を固定することもできます。

session[:start] = params[:start]

次に、で取得しsession[:start]ます。

コントローラから独自の特別なCookieにそれを押し込むこともできます。

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

params[:start]または、そのビットのデータを永続化することが本当に重要な場合は、をデータベースに保存できます。

それがあなたを正しい方向に向けるのに役立つことを願っています。

于 2012-04-29T15:03:39.997 に答える
0

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

于 2012-04-28T19:01:50.080 に答える