問題タブ [django-q]
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.
python - Django Q オブジェクトで論理排他的 OR を実行します
モデルフィールドの選択を外部キーのサブセットに制限するために演算子モジュールを使用して、オブジェクトに対して論理排他的 OR ( XOR )を実行したいと考えています。私はPython 2.7.2とともにDjango 1.4.3でこれを行っています。私はこのようなものを持っていました:django.db.models.Q
AUTHORIZED_AUTHORS
既存のグループ名のリストです。
Q
ただし、オブジェクトは演算子をサポートしていないため、これは機能しませんでした (ドキュメントのand演算子^
のみ)。スタック トレースからのメッセージは (部分的に) 次のとおりです。|
&
したがって、この回答に触発されて、特定のルックアップに XOR を実装しようとしました。ルックアップがハードコードされているため、実際には柔軟ではありません (たとえばkwargs
、引数で使用する必要があります...)。query_xor
私は最終的に次のようなことをしました:
それは私が望むように機能しますが、私にはpythonicではないようです(特にquery_xor_group
メソッド)。これを行うためのより良い(より直接的な方法)はありますか?
基本的に、私の質問はその部分を取り除き、次のlimit_choices_to
ように要約できます。
django.db.models.Q
Djangonic の方法で一連のオブジェクトに対してビット単位の排他的 OR を作成するにはどうすればよいですか?
python - Q を使用して django データをフィルタリングする
www.example.com/?cat=0&from=300&to=600
最初がcategory
- from_p
で、to_p
基準が機能していない場合。修正方法は?1 つの基準に対してのみ機能します。ユーザーが(たとえば)設定し、これらの基準category
でfrom_p
検索する場合に必要です。
django - Django1.4クエリによるページネーション
https://docs.djangoproject.com/en/dev/topics/pagination/の例に従って、ページ付けを機能させようとしています。クエリを使用していますが、クエリデータを後続のページに渡すことができないようです。最初のページは期待どおりに10件の結果に制限されたクエリを返しますが、次のページは単に空白のテーブルを返します。
- バージョン:Django1.4.4およびpython2.6.6
コード:
URL:
クエリを除外してすべての結果のページネーションが機能するように表示すると、テンプレートが正しく設定されます。例:
前もって感謝します。
検索機能:
python - ジャンゴ。カテゴリに関する Q クエリ
次のように定義されたカテゴリモデルがあります。
カテゴリは、最大 3 レベルの親を持つことができます (カテゴリ 1 -> カテゴリ 2 -> カテゴリ 3 -> カテゴリ 4)。
データベース内のすべてのアイテムを表示する必要がありますが、場所 == Ebay の場合に限り、ベース カテゴリ 14 を除外します。
私が使用していた:
アイテムのカテゴリが 14->15->42->16 の場合、返されるカテゴリ番号は 16 です。最初のカテゴリ レベルが必要ですが、親がいくつあるかわかりません。親は 0 にすることも、最大 3 人にすることもできます。
クエリを編集して、カテゴリ ツリーを振り返るにはどうすればよいですか?
django - 外部キーを持つQオブジェクトでdjangoクエリセットを定義する
モデル例:
およびいくつかのサンプルデータ:
著者名に '111' と '333' が含まれるすべての本を取得したい (したがって、少なくとも 2 人の著者がいるすべての本: 最初の名前は 111、2 番目の名前は 333)
チェーン クエリを使用して、この目標を達成できます。
ID が 3 と 4 の 2 冊の本を返します
Qオブジェクトを使用して目標を達成する方法はありますか?
python - Qと複数のカテゴリを使用したdjangoクエリ
次のモデル構造があります。
ハム、チーズ、またはその両方を含むすべてのピザを見つけたいのですが、これは標準的な django の方法ですか?: from django.db.models import Q
たとえば、トッピングのリストを取得した場合、プログラムでどのように行うのですか?:
python - Django 1.5.1 の Q オブジェクトで動的属性を使用することは可能ですか?
翻訳済みフィールドに使用django-transmeta
していますが、これらの翻訳済みフィールドを使用していくつかの検索を実行する必要があります。
という翻訳可能なフィールドを持つモデルがあるとしtranslated_field
ます。
最初のアプローチでは、いつものように、次のように考えることができます。
2 番目のアプローチは、可能なすべての言語バージョンをハードコーディングすることです。例えば:
この 2 番目のオプションは本当にハードコードされているようで、次のような3 番目のオプションが考えられるのではないかと思います。
またはさらに良い... Q オブジェクトを使用して **kwargs を使用できるオプションはありますか?
ありがとう!
django - Django ORM - 複数の関連オブジェクトと Q クエリによる選択
わかりました。Order、Product、OrderProduct という 3 つのテーブルがあります。Orders にある製品を見つけたいので、次の関数を作成しました。
このコードは、次のような SQL クエリになります。
Django の ORM に次のクエリを書かせる方法はありますか?
これをより良くするための提案はありますか?
django - django : Q オブジェクトの使用
私はこれらの2つのクエリを持っています:
と
その場合gifts = gifts | gifts1
、次のエラーが表示されます。
エラー ユーザー定義関数で例外が発生しました
次のような Q オブジェクトを使用する場合:
私は再び同じエラーが発生します
エントリークエリはこちら
誰かが私がどこで間違っているのか教えてください