2016-10-31 7 views
0

私はSinatraに4つのテキストフィールドを持つフォームを持っています。ページが閉じられてから再び開くと、最後に送信された値でテキストフィールドを埋めたいと思います。Sinatraに永続的なフォームデータを保存する簡単な方法はありますか?それとも、ファイルに書式変数を書いて手動で読み込む必要がありますか?

私は現在、各変数を同じフォルダ内のファイルに書き込んでから、プログラムが開始されるときにそれらを読み戻しています。これを行う簡単な方法があるかどうかを知りたいと思います。

Ruby/Sinatraには、フォームデータをファイルに書き込んで何らかの形でそれを読み取ることができるシステムが既にありますか?

答えて

2

シナトラでこのような状況を処理する最も良い方法は、セッションをファイルに書き込んで取得する代わりにセッションを使用することです。 configureブロックでセッションを有効にします。ブロック

before do 
    session[:user_input] ||= [] 
end 

前に、あなたの中

configure do 
enable :sessions 
set :session_secret, "secret" 
end 

そして、セッションオブジェクトにユーザーの入力値を渡します。そこから、ユーザセッションがアクティブである限り、それを取り出すことができます。

関連する問題