問題タブ [django-orm]
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 ORM を使用した日付によるオブジェクトの並べ替えとグループ化
日付フィールドを持つ Article モデルがあります。すべての Article オブジェクトに対してクエリを実行し、データ型を年ごとに返してから、その中の月ごとに返したいと考えています。
例えば
archives = {
2009: {12, [, , ...], 11: [...]},
2008: {12, [...], 11: [...]},
}
これは可能ですか?
django - Djangoオブジェクトをランダムに並べ替える
ここに興味深い問題があります。評価順にリストするユーザーのリストがあり、2人のユーザーが同じ評価を持っている場合、リストが常に同じになるとは限らないことを確認するために使用する乱数があります。
現在、私はクエリを実行することによってこれを行います:
しかし、大きなDjangoアプリをいくつかの小さなアプリにリファクタリングしているときに、テーブルの名前をこのSQLにハードコーディングしたことに気づきました(そして、単体テストが壊れました)。これを実現するには、ネイティブORMを使用する必要があります。
どうすれば同じ結果を得ることができますが、代わりにDjangoのdjango.contrib.auth.Userとプロファイルモデルを使用しますか?
django - 入力されたパラメータの順序を尊重するクエリを作成する方法はありますか?
(これが完全にばかげている場合はお知らせください。おそらくそれが、私がこれについて何も見つけられなかった理由です。)
このストーリーには 2 つのモデルがRanking
ありArtist
、Ranking
一般的にArtist
(object_id、content_type ... シバン全体) に関連しています。
Ranking.objects.values_list()
特定のフィールド (私の場合) で並べ替えて返されたオブジェクトのリストがありますscore
。明らかに、ランク付けされたアーティストのリストを表示したい場合は、それらを同じ順序で並べたいと思います。.filter(pk__in=list)
、などのさまざまな方法を.in_bulk(list)
試しました。 の結果.values_list()
もタプルに強制しようとしました。
彼らはすべて私のリストを取ります:
そして、次のように返します。
(正気を保つために、2 番目のケースで ID を指定しているだけです。)
現在、これを機能させる唯一の方法は、空のリストを作成し、非values_list()
クエリをループすることです。
これはn
クエリを生成するだけなので、より良い方法があるかどうか疑問に思っています。タグで示されているように、PostgreSQL を使用しています。
python - Django の一般的なリレーションの練習
私は自分の django-app のオブジェクトベースのアクセス許可を持つ認証バックエンドを開発しています。オブジェクトとアクセス許可の間の一般的な関係を使用しています:
そして今、特定のグループまたはユーザーが特定の権限を持っている、指定されたコンテンツ タイプのすべてのオブジェクトを取得したいと考えています。それを行う最善の方法は何ですか?アプリのモデルでリレーションの 2 番目の端を定義しますか? カスタムSQLを書いたほうがいいですか?私は汎用バックエンドを構築しようとしているので、それを使用しているアプリに依存したくありません。ありがとう!
django - Django はネストされたクエリと除外を実行できますか
このクエリを Django でまとめる手助けが必要です。ここでの例は、要点を絞るために単純化されています。
英語で作成したいクエリは次のようになります。
昨日作成されたデータが False であるすべてのレコードを教えてください。その同じ範囲のデータは、特定のユーザーに対して True として表示されません。
明確でない場合の入力/出力の例を次に示します。
表の値
出力クエリセット
私が探しているのは、レコード #4 を除外することです。この理由は、指定された範囲「yesterday」では、データがレコード #2 のユーザーに対して 1 回 True として表示されるため、レコード #4 が除外されるためです。
ある意味では、2 つのクエリが実行されているように見えます。1 つは指定された範囲内のレコードを決定するためのもので、もう 1 つは「True」レコードと交差するレコードを除外するためのものです。
Django ORM でこのクエリを実行するにはどうすればよいですか?
python - Django: グループ化?
次のようなものを探しています。
しかし、group_by()
存在しません...
これにより、各ユーザーの最近クローズされた請求書が見つかります。
この集約 APIを使用すると、カウントと合計に対してこのようなことができるように見えますが、カウントや合計などは必要ありません。実際には請求書オブジェクトが必要です!
django - テーブルフィールドから個別の値を選択します
DjangoのORMに頭を悩ませています。私がやりたいのは、テーブルのフィールド内の個別の値のリストを取得することです....次のいずれかに相当します。
(または代わりに)
生のSQLに頼る前に、少なくともDjangoの方法でそれを実行したいと思います。たとえば、テーブルの場合:
id、street、city
1、メインストリート、ハル
2、アザーストリート、ハル
3、Bibble Way、レスター
4、別の方法、レスター
5、ハイストリート、ロンディニウム
取得したい:
ハル、レスター、ロンディニウム。
django - app_label を介してサブディレクトリにモデルを作成しますか?
モデルをサブフォルダーに配置するために、ここで説明されている app_label メタ フィールドを使用しようとしました。
私のディレクトリ構造は次のようになります。
- 事業
- アプリ
- ふー
- モデル
- __init__.py
- bar_model.py
- モデル
- ふー
- アプリ
bar_model.py で、次のようにモデルを定義します。
次のようにモデルを正常にインポートできます。
ただし、実行中:
モデルのテーブルを作成しません。ただし、冗長モードでは、アプリ「foo」が正しく認識されていることがわかります(settings.pyのINSTALLED_APPSにあります)。モデルを foo の下の models.py に移動すると機能します。
このモデル構造がsyncdbによって認識されないようにするapp_labelまたはメカニズム全体で文書化されていない特定の規則はありますか?
python - トリッキーなモデルの継承 - Django
少なくとも私にとっては、これは少しトリッキーだと思います。:)
したがって、 Person、Singer、Bassist、Ninjaの 4 つのモデルがあります。
Singer、Bassist、Ninja は Person を継承しています。
問題は、各 Person がそのサブクラスのいずれかになる可能性があることです。
例えば、人は歌手にも忍者にもなれる。別の人はベーシストと忍者になることができます。もう1つは3つすべてにすることができます。
モデルをどのように編成すればよいですか?
助けていただければ幸いです。
sql - 人気アルゴリズム - SQL / Django
Reddit、Digg、さらにはStackoverflowなどのサイトで使用されている人気アルゴリズムを調査してきました。
Reddit アルゴリズム:
私は常に SQL 内で単純な順序付けを実行してきましたが、そのような順序付けをどのように処理すればよいのか疑問に思っています。
テーブルを定義するために使用する必要がありますか、または式内の順序で (パフォーマンスを妨げることなく) SQL を構築できますか?
また、パフォーマンスの問題を発生させることなく、さまざまな機会に複数の順序付けアルゴリズムを使用できるかどうかも疑問に思っています。
Django と PostgreSQL を使用しています。
助けていただければ幸いです。^^