2

私は Padrino (私は PHP のバックグラウンドから来ました) と Ruby Web フレームワーク全般に非常に慣れていないため、単純なユーザー認証とセッション管理システムを実装する方法を理解しようとしていますが、実際には多くのドキュメントを見つけていません。件名。padrinoには、ユーザーログイン/認証などを含む事前構築済みの「管理者」パッケージが付属していることを知っていますが、自分のニーズに合わせてソリューションをカスタマイズしようとするのではなく、最初から自分で作成したいと思います.

私の質問は、Padrino で、ユーザー/パスの組み合わせがデータベースに対して検証されたらセッション データを設定し、そのセッション データを取得してユーザーが特定のページ/リソースを保護する要求が行われたときにログインし、セッション データを使用してユーザーの ID/役割/ect を取得し、ユーザーがログアウトしたときにそのセッションを破棄します。PHP プログラマーとして、私は$_SESSIONこの目的でスーパーグローバルを使用することに慣れていますが、padrino/ruby にこれに似たものはありますか? enable :sessionsapp.rb にがあることに気付きまし:sessionsた。pardrino は同等ですか?

4

1 に答える 1

12

うん、

session[:cart] = cart_id
Cart.find(session[:cart].to_i) if session[:cart].present?

認証の目的で、より簡単な方法を使用して padrino-admin と組み込みの認証を回避できます。

# in app.rb
use Rack::Auth::Basic, 'Restricted Area' do |username, password|
  user == 'admin' and password == 'pwd'
end

セッション/Cookieをもう少し制御する必要がある場合は、次を使用できます。

set :sessions,
  :key          => '__awesome_key',
  :secret       => 'awesome_password',
  :expire_after => 1.year
于 2012-04-18T14:26:28.440 に答える