問題タブ [django-sessions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
16390 参照

python - Django テスト フレームワークでセッションを変更するにはどうすればよいですか

私のサイトでは、現在の session_key に基づいてユーザーを作成することにより、ログインしていなくても個人がコンテンツを投稿できます。

ビューのテストをセットアップしたいのですが、request.session を変更できないようです:

私はこれをしたい:

しかし、私はエラーが発生します:

get リクエストを行う前にクライアント セッションを変更する方法について考えていますか? 私はこれを見ましたが、うまくいかないようです

0 投票する
2 に答える
1054 参照

django - Django セッションの奇妙な動作: Decimal の無効なリテラル: '2011-01-04 09:36:59' エラー

Web アプリの django_session テーブルからセッション コンテンツを取得しようとすると、このエラーが発生します。request.session.get('mykey_name') を使用していますこれを取得するためにdjangoが実行するクエリは次のとおりです。

s = Session.objects.get(session_key = self.session_key,expire_date__gt=datetime.datetime.now()

kwargs は次のとおりです。

完全なトレースバックは次のとおりです。

私はdjango 1.2.3とpython 2.7を使用しており、データベースのバージョンはCentOSで5.1.33-communityです。なぜこれが起こっているのでしょうか?前もって感謝します!

0 投票する
1 に答える
4611 参照

python - HttpResponseRedirect を使用して Django でエラーを渡す

私は、HttpResponseRedirect が 1 つのパラメーター (URL) しかとらないことを知っています。しかし、エラーメッセージを表示してリダイレクトしたい場合があります。

私はこの投稿を読んでいました: How to pass information using an HTTP redirect (in Django) and there are many good recommends. どのように機能するかわからないライブラリを使用したくありません。Django docs によると、削除される予定のメッセージに依存したくありません。私はセッションを使用することを考えました。また、次のような URL で渡すというアイデアも気に入っています。

次に、エラーコードからメッセージへのマップがあります。これらのエラー メッセージをハード コードするグローバル マップのような構造を使用することは良い習慣ですか、それとももっと良い方法がありますか?

または、セッションを使用する必要があります

編集:セッションを使用して動作させました。このようなものをセッションに入れるのは良い習慣ですか?

0 投票する
1 に答える
4254 参照

django - django - リンクを使用して同じページに戻ると、何らかの理由でセッションが保存されない

私の見解の 1 つで、次のようないくつかのセッションを保存しています。

次に、同じビュー関数と他のアプリケーションで見つかった他のビューで、次のようなセッション値を取得しようとしています:

「session_1」と「session_2」の値が期限切れにならず、Web サイトのどこでも利用できるようにしたいと考えています (同じアプリケーションの他のビューや他のアプリケーションのビューのように)。

私の問題は、同じページ/ビュー (上記) にいるときに、ページを更新するときに、session_1 と session_2 の値を取得する際に問題が発生することです。しかし、別のページに移動してから元のページに戻ると、'session_1' と 'session_2' の値がなくなっているとしましょう。また、「session_1」と「session_2」の値は、他のページ/ビューでは使用できません。

私のsettings.pyにはセッションの設定がないので、セッションのすべての値はデフォルトのものです。

セッションが保存されない理由はありますか? ありがとうございました!

0 投票する
2 に答える
3017 参照

python - Djangoセッション:セッションデータを確認して同じビューに設定できますか?

Djangoセッションを使用する場合、同じビューでセッションデータが以前に設定されているかどうかを確認し、設定されていない場合は初期セッションデータを設定することをお勧めしますか?

ユーザーがCookieを無効にしている場合、これは私またはユーザーにとって大きな問題を引き起こしますか?

テストCookieの存在は私を少し混乱させました。しかし、これらを使用した場合、ユーザーが最初に表示したページに関するデータを記録することはできません。)


以下は私のviews.pyファイルからの抜粋です。ビューでは、ユーザーはゲームが掲載されているページにアクセスしています。

以前にセッションデータを保存していた場合、および初めてゲームを表示した場合、ビューはセッションデータを変更して、ゲームにアクセスしたという事実を記録します。セッションデータがない場合は、ここで初期化されます。


Djangoを使用するのはこれが初めてなので、セッションの使用に関して不注意に犯した明白な間違いを知りたいと思いました。

あなたの専門知識と助けてくれてありがとう:)


編集:

確認するだけです。ユーザーがCookieを無効にしている場合、表示するすべてのページのデータベースに新しいセッションエントリが作成されませんか?右?

0 投票する
5 に答える
12017 参照

python - Django、管理インターフェイスでセッション データを表示する方法

Django セッションを使用していますが、管理インターフェイスでセッション データを表示する方法が必要です。これは可能ですか?

つまり、セッションごとに、セッションデータベースに保存されているデータを確認したいと考えています(収集できる限り、これは基本的に辞書です)。

現在、次のようなハッシュがSession dataフィールドに表示されているだけです。


これを実現するために、次を admin.py に入れました。


特に、少なくとも各セッションの IP アドレスを確認できるようにしたいと考えていました。(IP アドレスごとのセッション数をカウントし、それぞれの合計セッション数に基づいて IP を並べ替えることができれば、それもいいでしょう。)

ご協力ありがとうございました :-)

0 投票する
1 に答える
2140 参照

django - django - ユーザーのログアウト後にセッション値を保存する

logoutユーザーがログアウトしているときにDjango を使用すると、すべてのセッションの値がフラッシュされます。ユーザーがログアウトしてもセッション値の一部を保持する方法はありますか?

0 投票する
2 に答える
4833 参照

python - django セッション ID が現在認証されていることを手動で検証する

Django session-id が現在認証されているかどうかを関数に通知する必要があります。これはすでにDjangoに組み込まれていることを理解しており、うまく機能しています。

しかし、セッション ID を渡す外部アプリがあり、セッション ID 文字列を Django に戻すときに、このセッション ID が有効であり、現在認証されていることを検証する必要があります。

Django 1.2 の組み込み関数の再利用はどこから始めればよいですか?

0 投票する
2 に答える
39766 参照

django - Django:セッションの設定と同じビューでのセッションキーの取得

データベースにいくつかのものを保存したいのですが、現在のセッションを外部キーとして使用しています: models.py から

このモデルの新しいエントリを作成するために、次を使用して現在のセッションを取得しています (views.py 内):

ただし、ユーザーがサイトに初めてアクセスしたため、まだ Cookie が設定されていない場合、上記のコードはDoesNotExistエラーを生成します。


Cookie が設定されていても、セッション オブジェクトを設定できることはわかっています。したがって、これを機能させるためのいくつかのハックを考えることができます。

  • 一意の識別子をセッション オブジェクトとして設定します (セッション キーに加えて)
  • データベースに追加したいデータをセッション オブジェクトとして一時的に保存し、デコレータ関数を使用して、セッションを使用する前にデータが存在するかどうかを確認します。
  • セッション オブジェクトを使用するだけで、データベースには何も保存しません (これは技術的には可能ですが、私の実装では、数百のエントリを持つ Python 辞書に依存し、少なくとも並べ替えなどのデータベースと同じくらい効率的です)。


しかし、私は一緒に暮らすことができるより良い解決策が欲しい. この問題に対して一般的に使用されている、または適切な解決策はありますか? または、モデルでセッションを適切に参照していますか?

ご協力ありがとうございました。

0 投票する
1 に答える
634 参照

django - Djangoセッションの使用

Djangoセッションの実装に問題があります。フィルタオプションが設定された従業員リストページがあります。フィルタリングは、フィールドとテキストボックスに入力されたテキストに基づいて行われます。フィルタリングされたユーザーはfilter.htmlページに表示されます。ユーザー名をクリックすると、そのユーザーのプロファイルページに移動します。ここで、フィルタリングされたユーザーが表示された前のページ(従業員のプロファイルページに戻るボタンが表示された場合)に戻ります(filter.html)。私はこれがセッションによって行われる可能性があると思います。しかし、セッションの使い方が正しいかわかりません。私はDjangoを初めて使用するので、これを解決するのを手伝ってください。ここに私のコードを投稿します:

Filter.html

従業員プロフィールのhtmlページ

私が提供したコードに多くのエラーがある場合は、それを修正するのを手伝ってください。