問題タブ [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.
django - Djangoミドルウェア:ミドルウェアモジュールエラーではありません
https://gist.github.com/426829で提供されているミドルウェアを使用して、クロス サイト スクリプティングを実行しています。
ただし、ミドルウェアを に追加するとMIDDLEWARE_CLASSES、次のエラーが発生します。
ImproperlyConfigured: ミドルウェア モジュールではありません。
私MIDDLEWARE_CLASSESはこのように見えます:
要点のコードは変更していません。process_requestそしてprocess_response方法があります。私はUbuntuで最新バージョンのPythonとDjangoを実行しています。
python - インポートされた関数による Python の変更の変更
インポートしてから呼び出すと、タプルをチェックして変更する関数を作成しようとしています。これを複数回呼び出すことができるようにしたいと思います。ただし、変数をその場で変更する方法がわからないため、関数に新しい変数を返すだけです。
2 つのファイルを使用した例を次に示します。
しかし、今私はこれをしなければなりません:
これはもっと厄介です。まず、タプルを直接置き換えるのではなく、古いタプル値を渡して戻り値を取得する必要があります。それは機能しますが、DRYではなく、これをよりきれいにする方法があるに違いないことを私は知っています.
これは実際には、django 設定ファイルでミドルウェアを更新する機能であるため、リストを使用できません。また、別のファイルに機能を持たせる必要はありませんが、可能だと思います。
python - Django 単体テストで Django メッセージ フレームワークのコンテンツにアクセスする方法
Django メッセージ フレームワークを使用して、メッセージをテンプレートに渡して、さまざまなシナリオ (ユーザー アカウントの作成が成功した場合など) でレンダリングします。メッセージは、セッションの Cookie 内に保存されます。
クッキーはMorselオブジェクトですが、メッセージの内容をテストするためにその構成部分を引き出すことができないようです。どんな助けでも大歓迎です!
django - Django - テンプレートの前にコンテキスト ディクショナリにアクセスする
実際のレンダリングの前に、コンテキスト プロセッサまたはミドルウェアを使用して、render_to_response に渡される辞書の値を変更したいと考えています。テンプレートをレンダリングする前に、コンテキストを検索したいタイプのユーザーの存在に基づいてメッセージ リストを作成する、実装しようとしているメッセージング スキーマがあります。
例:
「変数」の存在に関するコンテキストに追加情報を追加できるようにしたいと思います。
ビューが変数を定義した後、テンプレートに到達する前に「変数」にアクセスして、コンテキストをさらに変更するにはどうすればよいですか?
django - URLを照合する前にrequest.pathを変更する方法はありますか?
「self」という単語を含むパスのリクエストを受け取ったら、URLと照合する前に、それをユーザーIDに置き換えたいと思います。私はこのようなミドルウェアを使ってみました:
置換は機能しますが、URLの一致後に行われるようです。この時点より前にパスを変更する方法はありますか?
python - djangoビューからHttpResponseを返した後のトリガー関数
別のマシン (既知の IP を持つ) がスプレッドシートを Web サーバーにアップロードできる django Web サーバーを開発しています。スプレッドシートが更新された後、スプレッドシートでいくつかの処理/検証/分析をトリガーし (5 分以上かかる場合があります --- 他のサーバーが応答を合理的に待つには長すぎます)、他のマシンを送信します (データ処理が終了したことを示す HttpResponse。
processing.data()を返した後はできないことはわかっていますがHttpResponse、機能的には次のようなコードが必要です。
各関数を個別に記述する方法は知っていますが、応答が返されたprocessing.data() 後に効果的に呼び出すにはどうすればよいでしょうか? views.upload_spreadsheet
django のrequest_finishedシグナリング フレームワークを使用してみましたが、これはprocessing.spreadsheet()を返した後にメソッドを トリガーしませんHttpResponse。views.upload_spreadsheet同じ問題でデコレータを使用してみました。
これは、ミドルウェアまたはカスタムのクラスベースのビューを作成することと関係があるのではないかと考えていますが、どちらも経験がないので、助けを求めて宇宙に質問を投げかけようと思いました。
ご協力いただきありがとうございます!
django - テンプレートまたはミドルウェアで指定された URL パラメーターにアクセスする
私の URL conf には、同じ名前のパラメーターuser_idを持つ複数の URL があります。ミドルウェアでこのパラメーターにアクセスすることは可能ですか?つまり、一般的に context_data に渡すことができますか?またはテンプレート自体で?
質問を説明するサンプル URL conf:
django - セッションミドルウェア:トランザクションミドルウェアの前または後?
ミドルウェアの順序に関して、この質問は次のように述べています。
SessionMiddleware
- 以前
TransactionMiddleware:ここではトランザクションは必要ありません
トランザクションでセッションの更新を望まないのはなぜですか?ビューで発生した何かの副作用としてセッションが更新され、ビューが失敗した場合でも、失敗していないかのようにセッションを更新したい場合は想像できません。(明らかに、セッションエンジンがデータベースベースでない場合、この問題には別の方法でアプローチする必要があります。)
SessionMiddlewareを外部で実行したい理由を明確に示してくださいTransactionMiddleware。
django - Djangoモデルを使用するDjangoミドルウェア?
ミドルウェア内から通常のDjangoモデルを使用することは可能ですか?
私は簡単な例を探していましたが、ミドルウェアに対するDjangoフレームワークのそのような部分の可用性については何も見つかりませんでした。私の限られた理解から、彼らはそうあるべきだと信じています。
django-middleware - Django ミドルウェア process_template_response がトリガーされない
process_template_response ミドルウェアで TemplateResponse オブジェクトを返す TemplateView がありますが、後者はトリガーされません。
process_response でミドルウェア メソッドを変更し、TemplateResponse で render() をプリフォームすると、ミドルウェア メソッドがトリガーされ、ページがレンダリングされます。
process_template_response でビューをレンダリングするには、どの手順を実行する必要がありますか?
意見: