followed_by フィールドを持つ注文モデルがあります。
class order(models.Model):
followed_by = models.ForeignKey(User, limit_choices_to={'groups__name': "Managers"})
私はそのようなモデルとそれらのモデルのフォームをいくつか持っています。デフォルトでは、フォームにはマネージャーであるユーザーをリストするモデル選択フィールドが表示されます。これで問題ありません。しかし、表示は良くありません。ユーザー名が表示され、名と姓が必要です。これはうまく機能します: Django ModelChoiceField を変更して、ユーザー名ではなくユーザーのフル ネームを表示します。
ただし、すべてのフォームで、ユーザーをマネージャーに制限するクエリセットを宣言する必要があります。上記の方法を使用して、カスタム modelchoicefield がフィルター処理されたクエリセットにデフォルト設定されるようにすることはできますか? したがって、フォームから私はただ言うことができます:
followed_by = ManagerUserModelChoiceField()