[解決済み] django テンプレートでクエリのフィルタリングを行うには?
2023-02-27 16:17:42
質問
django テンプレートからフィルタリングされたクエリを実行し、ビュー内の python コードに相当するオブジェクトのセットを取得する必要があります。
queryset = Modelclass.objects.filter(somekey=foo)
私のテンプレートでは、次のようにしたいと思います。
{% for object in data.somekey_set.FILTER %}
を書きたいのですが、FILTERの書き方がどうしてもわかりません。
どのように解決するのですか?
これは設計上できません。 Django フレームワークの作者は、プレゼンテーションコードとデータロジックを厳密に分離することを意図しています。 モデルのフィルタリングはデータロジックであり、HTML の出力はプレゼンテーションロジックです。
ですから、いくつかのオプションがあります。 最も簡単なのは、フィルタリングを行い、その結果を
render_to_response
. あるいは、モデルにメソッドを書いて、そのメソッドで
{% for object in data.filtered_set %}
. 最後に、あなた自身のテンプレートタグを書くこともできますが、この特定のケースでは、私はそれを避けることをお勧めします。
関連
-
[解決済み】Djangoのクエリセットフィルタリングでnot equalを行うにはどうすればよいですか?
-
[解決済み] プログラムの実行やシステムコマンドの呼び出しはどのように行うのですか?
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] django のクエリセットで OR 条件を実行する方法は?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
-
[解決済み] Pythonでマルチプロセッシングキューを使うには?
-
[解決済み] matplotlib でプロットの軸、目盛、ラベルの色を変更する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] googletransがエラー 'NoneType' オブジェクトに 'group' 属性がない、と言って動かなくなった。
-
[解決済み] Djangoで2つの日付の間を選択する
-
[解決済み] 辞書のキーと値を交換するにはどうすればよいですか?
-
[解決済み] Python 2.7サポート終了?
-
[解決済み] DataFrameに日付間の日数カラムを追加する pandas
-
[解決済み] 範囲指定された浮動小数点数のランダムな配列を生成します。
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] tensorflowのCPUのみのインストールでダイナミックライブラリ 'cudart64_101.dll' を読み込めなかった
-
[解決済み] subprocess.run()の出力を抑制またはキャプチャするには?