問題タブ [django-middleware]

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 投票する
2 に答える
1833 参照

django - Djangoミドルウェア:ミドルウェアモジュールエラーではありません

https://gist.github.com/426829で提供されているミドルウェアを使用して、クロス サイト スクリプティングを実行しています。

ただし、ミドルウェアを に追加するとMIDDLEWARE_CLASSES、次のエラーが発生します。

ImproperlyConfigured: ミドルウェア モジュールではありません。

MIDDLEWARE_CLASSESはこのように見えます:

要点のコードは変更していません。process_requestそしてprocess_response方法があります。私はUbuntuで最新バージョンのPythonとDjangoを実行しています。

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

python - インポートされた関数による Python の変更の変更

インポートしてから呼び出すと、タプルをチェックして変更する関数を作成しようとしています。これを複数回呼び出すことができるようにしたいと思います。ただし、変数をその場で変更する方法がわからないため、関数に新しい変数を返すだけです。

2 つのファイルを使用した例を次に示します。

しかし、今私はこれをしなければなりません:

これはもっと厄介です。まず、タプルを直接置き換えるのではなく、古いタプル値を渡して戻り値を取得する必要があります。それは機能しますが、DRYではなく、これをよりきれいにする方法があるに違いないことを私は知っています.


これは実際には、django 設定ファイルでミドルウェアを更新する機能であるため、リストを使用できません。また、別のファイルに機能を持たせる必要はありませんが、可能だと思います。

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

python - Django 単体テストで Django メッセージ フレームワークのコンテンツにアクセスする方法

Django メッセージ フレームワークを使用して、メッセージをテンプレートに渡して、さまざまなシナリオ (ユーザー アカウントの作成が成功した場合など) でレンダリングします。メッセージは、セッションの Cookie 内に保存されます。

クッキーはMorselオブジェクトですが、メッセージの内容をテストするためにその構成部分を引き出すことができないようです。どんな助けでも大歓迎です!

0 投票する
3 に答える
3762 参照

django - Django - テンプレートの前にコンテキスト ディクショナリにアクセスする

実際のレンダリングの前に、コンテキスト プロセッサまたはミドルウェアを使用して、render_to_response に渡される辞書の値を変更したいと考えています。テンプレートをレンダリングする前に、コンテキストを検索したいタイプのユーザーの存在に基づいてメッセージ リストを作成する、実装しようとしているメッセージング スキーマがあります。

例:

「変数」の存在に関するコンテキストに追加情報を追加できるようにしたいと思います。

ビューが変数を定義した後、テンプレートに到達する前に「変数」にアクセスして、コンテキストをさらに変更するにはどうすればよいですか?

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

django - URLを照合する前にrequest.pathを変更する方法はありますか?

「self」という単語を含むパスのリクエストを受け取ったら、URLと照合する前に、それをユーザーIDに置き換えたいと思います。私はこのようなミドルウェアを使ってみました:

置換は機能しますが、URLの一致後に行われるようです。この時点より前にパスを変更する方法はありますか?

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

python - djangoビューからHttpResponseを返した後のトリガー関数

別のマシン (既知の IP を持つ) がスプレッドシートを Web サーバーにアップロードできる django Web サーバーを開発しています。スプレッドシートが更新された後、スプレッドシートでいくつかの処理/検証/分析をトリガーし (5 分以上かかる場合があります --- 他のサーバーが応答を合理的に待つには長すぎます)、他のマシンを送信します (データ処理が終了したことを示す HttpResponse。

processing.data()を返した後はできないことはわかっていますがHttpResponse、機能的には次のようなコードが必要です。

各関数を個別に記述する方法は知っていますが、応答が返されたprocessing.data() 後に効果的に呼び出すにはどうすればよいでしょうか? views.upload_spreadsheet

django のrequest_finishedシグナリング フレームワークを使用してみましたが、これはprocessing.spreadsheet()を返した後にメソッドを トリガーしませんHttpResponseviews.upload_spreadsheet同じ問題でデコレータを使用してみました。

これは、ミドルウェアまたはカスタムのクラスベースのビューを作成することと関係があるのではないかと考えていますが、どちらも経験がないので、助けを求めて宇宙に質問を投げかけようと思いました。

ご協力いただきありがとうございます!

0 投票する
3 に答える
4524 参照

django - テンプレートまたはミドルウェアで指定された URL パラメーターにアクセスする

私の URL conf には、同じ名前のパラメーターuser_idを持つ複数の URL があります。ミドルウェアでこのパラメーターにアクセスすることは可能ですか?つまり、一般的に context_data に渡すことができますか?またはテンプレート自体で?

質問を説明するサンプル URL conf:

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

django - セッションミドルウェア:トランザクションミドルウェアの前または後?

ミドルウェアの順序に関して、この質問は次のように述べています。

SessionMiddleware

  • 以前TransactionMiddleware:ここではトランザクションは必要ありません

トランザクションでセッションの更新を望まないのはなぜですか?ビューで発生した何かの副作用としてセッションが更新され、ビューが失敗した場合でも、失敗していないかのようにセッションを更新したい場合は想像できません。(明らかに、セッションエンジンがデータベースベースでない場合、この問題には別の方法でアプローチする必要があります。)

SessionMiddlewareを外部で実行したい理由を明確に示してくださいTransactionMiddleware

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

django - Djangoモデルを使用するDjangoミドルウェア?

ミドルウェア内から通常のDjangoモデルを使用することは可能ですか?

私は簡単な例を探していましたが、ミドルウェアに対するDjangoフレームワークのそのような部分の可用性については何も見つかりませんでした。私の限られた理解から、彼らはそうあるべきだと信じています。

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

django-middleware - Django ミドルウェア process_template_response がトリガーされない

process_template_response ミドルウェアで TemplateResponse オブジェクトを返す TemplateView がありますが、後者はトリガーされません。

process_response でミドルウェア メソッドを変更し、TemplateResponse で render() をプリフォームすると、ミドルウェア メソッドがトリガーされ、ページがレンダリングされます。

process_template_response でビューをレンダリングするには、どの手順を実行する必要がありますか?

意見: