2

私はrails3アプリケーションを構築しており、優れた「gmail」gemを使用してgmailを操作しています。各ユーザーが自分のユーザー名とパスワードを入力すると、gem が gmail への接続を作成し、メールの取得や新しいメールの送信に使用できます。

毎回新しい接続を作成することなく、同じコントローラー内のアクション間でこの接続変数を共有するにはどうすればよいですか?

元。ユーザーは自分の詳細を使用してログインします。

@gmail = Gmail.connect(email, pass)

次に、ユーザーは別のアクションを呼び出すリンクをクリックします。たとえば、新しいメールを読むなどです。

@newemails = @gmail.inbox.count(:unread)

問題は、この @gmail 接続オブジェクトが nil であるため、「未読」アクションで再利用できないことです。これは文字列ではないため、セッション変数またはデータベースに保存できません。また、接続変数はすべてのセッションでグローバルではないため、これを @@class_variable に格納することはできません。各ユーザーは明らかに独自の接続を持っている必要があります。

このオブジェクトをさまざまなアクションで共有する最善の方法は何ですか?

助けてくれてどうもありがとう、アレックス

4

0 に答える 0