カスタムマネージャを使用してデフォルトのユーザーモデルを拡張する方法を教えてください。ユーザーモデルのDjangoカスタムマネージャ
私のアプリには、組み込みのグループモデルを使用して定義される多くのユーザータイプがあります。したがって、ユーザーはクライアント、スタッフなどである可能性があります。
User.clients.filter(name='Test')
名前がTestのすべてのクライアントを取得するには、次のようなことができることが理想的です。私は、ユーザ定義モデルのカスタムマネージャを使ってこれを行う方法を知っていますが、少なくとも、djangoのソースコードを変更するのには不十分ですが、すべての焼き込み済みのものを保持しながら、Userモデルに移行する方法はわかりません自身ノーノーですいる....
-1ユーザープロファイルは余分なデータ属性を追加するのに適していますが、この場合はまったく役に立ちません。そして最後のコードブロックは単純に壊れています(テストしましたか?)、そのようなクラスにマネージャーを追加することはできません。正しく設定されるようにadd_to_classメソッドを呼び出さなければなりません。 –
Userの代わりにプロファイルモジュールを使用するのに役立ちます。 UserProfile.user_clients.filter(name = 'Test') しかし、私の最後のブロックは本当に壊れています。ありがとう。私は自分の答えを編集しています。 – Oduvan