2016-04-25 6 views
0

私はLaravel 5.2.29を使用しています。私はいくつかのスケジュールされたコマンドを設定しました。スケジュールでセッションを使用する

これらのうちの1つは、通常の使用(ブラウザ経由)でアプリで使用されるいくつかの方法を使用しているため、セッションにアクセスできます。

私がしようとartisan schedule:runを使用して手動でコマンドを実行したときしかし、私は次の例外を取得: Session store not set on request.

セッションはルートがなくてもアクセスしているかのように(私は同じ静脈に仮定設定されていませんWebミドルウェア)、セッションを手動で起動する方法はありますか?私はむしろそれを使用しないように自分のメソッドを書き直したいと思います。

+0

「セッション」はコマンドから使用するつもりはないと思います。この場合、 'Session'の使用についてもっと説明できますか? – Gntem

+0

私の 'User'sにはロールがあり、モデルに特定のロールがあるかどうかを調べるメソッドがあります。 1回のページ要求で複数のチェックがある可能性があるので、毎回データベースを検索するのではなく、セッションから直接取得できるように初期チェックの結果をフラッシュしました。 – Sacha

答えて

1

CLIでセッションにアクセスできません。セッションは、コマンドラインで感知できないウェブブラウザ(クライアント側)と厳密に接続されています。

ローカルストレージが必要な場合(サーバー側の場合)キャッシュドライバを試すことができます。

+0

確認していただきありがとうございます。CLIでセッションを使用することはできません。私は代わりに、キャッシュを使用してセッションを使用して何を変更して終了しましたが、1分間のみキャッシュします。理想的ではありませんが、機能します! – Sacha

関連する問題