問題タブ [django-managers]

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

django - Djangoとドメインレイヤー

djangoを使用してドメインレイヤーを整理するにはどうすればよいですか?

クエリを保持するカスタムマネージャーを作成できることはわかっていますが、仕様パターンのようなより柔軟なものが必要な場合はどうでしょうか。

Djangoに固有のドメインパターンはありますか?

私は現在、Djangoを使用する大規模なアプリケーションを設計していますが、ドメインレイヤーを正しく実行する方法を知りたいです。

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

django - Djangoページ付け(オブジェクトに対応するページ番号を取得)

オブジェクトページからインデックスページを取得しようとしているページ付けがあります(逆のページ付けのようなものです)

get_paginated_postsは、モデルのページ番号を返しますPost

これは私のモデルです

私の懸念はPost.objects.get_paginated_posts、get_page関数の呼び出しです。インスタンスからクラス
を呼び出すのは正しいですか?Postこれを可能にする他のより良い方法はありますか?
なぜ私super(Post, self).objects.get_paginated_postsは同じことをするために電話をかけることができないのですか?オブジェクトのマネージャーへのアクセスがないため、機能しない
ことを理解しています。self.objects.get_paginated_posts

解決しました

Tomasz Elendtによって提案された最終的なコード:

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

django - マネージャーを Django モデルに宣言すると、「オブジェクト」が無効になるのはなぜですか

以下のモデルにマネージャーを宣言しましたが、その後、使用できなくなりましList.objects.get()た。理由を知っている人はいますか?

そしてマネージャー:

エラーはtype object 'List' has no attribute 'objects'

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

django - Djangoの多対多の関係にレコードを追加する適切な方法

まず、プロジェクトをGoogle App Engineで実行することを計画しているので、私が知る限り、djangoのタイプをサポートしていないdjangoappengineを使用しています。ManyToManyFieldこのため、モデルを次のように設定しました。

ページには、グループ名を入力できるフォームフィールドがあります。このフォームフィールドの結果で、ユーザーとグループの組み合わせのUserGroupオブジェクトを作成し、グループがまだ存在しない場合は、新しいGroupオブジェクトを作成します。最初は、このロジックをメソッドを使用してUserGroupクラスに配置し始めましたが、これadd_groupをクラスに配置することは実際には意味がないことにすぐに気付きましたUserGroup。これを行う適切な方法は何でしょうか?モデルマネージャーについていくつか見ました。これは何のためですか?

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

python - リクエスト オブジェクトに基づいてモデル インスタンスを作成するメソッド

私はこのようなモデルを持っています:

次のような関数を作成したい:

注:上記は純粋にデモンストレーションを目的としたものであり、正確には私がやっていることではありませんが、脱線します...

そのような関数を配置するのに理想的な場所はどこでしょうか? モデルのクラスメソッド? マネージャーで?ベストプラクティスは何でしょう。

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

python - Djangoget_or_createをオーバーライドする

メソッドをオーバーライドするモデルがありますsave。これにより、saveメソッドを一部のデータに渡し、保存する前にフィールドに自動入力できます。これが私のモデルです:

アイデアは、アカウントに関連付ける必要のあるオブジェクトの基本モデルを設定することです。そうすれば、アカウントの接続が発生するたびに処理する必要がなくなります(これは多くのことです)。

get_or_createただし、リクエストを渡さずに新しいオブジェクトを保存する、も使用したいと思います。使用せずget_or_createtry/を実行することは可能ですが、オーバーライドする方法があるかどうか、およびそれを実行する適切な方法は何かexceptを知りたいです。get_or_create

Manager(オーバーライドを検討している)のコードを調べたところ、get_or_create関数は関数を呼び出すだけQuerySet.get_or_createです。QuerySetたぶん、バージョンではなく、他のマネージャー関数を使用するように書くことができますget_or_createか?みんなどう思いますか?

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

django-models - djangoの注釈と集計機能

djangoには次のテーブルがあり、アイテムごとに投票数を数えようとしています。

次のクエリセットがあります

アイテム名とビュー カウントを含むリストを返しますが、アイテム オブジェクトは返しません。文字列値だけでなくオブジェクトが返されるように設定するにはどうすればよいですか? 私は Manager と Queryset メソッドをいじっていますが、それは正しいですか? アドバイスをいただければ幸いです。

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

json - カスタムマネージャーメソッド、jsonダンプ、および型エラーを回避する方法を使用してフィクスチャを作成します:xxxはjsonシリアル化可能ではありません

私のアプリはdbtablesのサブセットとより少ないレコードを使用するため、カスタムマネージャーメソッドを使用してテストフィクスチャを作成しようとしています。だから私はinitial_dataを使うという考えを捨てました。マネージャーで私はこのようなことをしています。Managers.pyで:

次に、csvファイルを変更して、一重引用符を二重引用符に置き換えるなどしました。次に、そのファイルをjsonとして保存しました。あまりにも馬鹿げている場合は申し訳ありませんが、テストデータを作成するのはこれが初めてです。もっとよく学びたいです。 way.fileのサンプルデータは次のようになります:myapp / Fixtures / testdata.json

これを使用してテストを実行しましたが、次のエラーが発生しました。

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

django - カスタムの連鎖可能なクエリセット

これは私のコードの一部です

次のコマンドは、出席した結果を示します

そうしないと、次のコマンドは機能しません

この問題を解決するにはどうすればよいですか?

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

django - 既にフィルター処理されたクエリセットで Django カスタム マネージャー関数を使用する

次のケースを検討してください。

my_filter()既にフィルター処理されたクエリセットでカスタム関数を使用したいことに注意してください。上記にどのコードを配置すればよい[some code here]ですか?全体の構造は正しいですか?