django Restフレームワークシリアライザーのドロップダウンアイテムをフィルタリングする方法は?

ファハドMdカマル

スタッフだけにタスクを割り当てたい。したがって、dorpdownリストには、is_staff = Trueの役割を持つユーザーのみを表示する必要があります。

しかし、私のドロップダウンリストには、データベースで使用可能なすべてのユーザー(Superuser、Authority、General_user)が表示されます。

ここに画像の説明を入力してください

ドロップダウンリストにスタッフのみを表示するようにこれを変更するには、2人のユーザーにスタッフの役割を割り当てたため、2人のユーザーのみを表示する必要があります...?

私のモデルクラス:

カスタムユーザーモデル:

class User(AbstractBaseUser, PermissionsMixin):
    """
    Responsible for handleing App user's data
    """
    email = models.EmailField(max_length=255, unique=True)
    nid = models.CharField(max_length=30, unique=True)
    username = models.CharField(max_length=20, blank=True, null=True)
    date_of_birth = models.DateTimeField(blank=True, null=True)
    first_name = models.CharField(max_length=50, blank=True, null=True)
    last_name = models.CharField(max_length=50, blank=True, null=True)
    image = models.FileField(
        upload_to=FileManager.photo_path, null=True, blank=True)
    is_active = models.BooleanField(default=False)
    is_superuser = models.BooleanField(default=False)
    is_staff = models.BooleanField(default=False)
    is_authority = models.BooleanField(default=False)
    is_specialist = models.BooleanField(default=False)
    is_general_user = models.BooleanField(default=False)

    timestamps = models.DateTimeField(auto_now_add=True)
    update = models.DateTimeField(auto_now=True)

    objects = user_manager.UserManager()

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['nid']

タスクモデル

class Task(BaseAbstractModel):
    '''
    Responsible for Storing and Providing Tasks data
    '''
    assignment = models.ForeignKey(Assignment,
                                   on_delete=models.DO_NOTHING,
                                   related_name='+')
    assigne_to = models.ForeignKey(User,
                                   on_delete=models.DO_NOTHING,
                                   related_name='+')

    task_name = models.CharField(max_length=300)
    is_done = models.BooleanField(default=False)

    created_by = models.ForeignKey(User,
                                   on_delete=models.DO_NOTHING,
                                   related_name='created_by')

シリアライザー:

class TaskListSerializer(serializers.ModelSerializer):
    '''
    Will be serializing Task's data
    '''

    created_by = UserListSerializer(read_only=True)

    class Meta:
        model = Task
        fields = ('assignment',
                  'assigne_to',
                  'task_name',
                  'is_done',
                  'created_by',)

汎用作成ビュー

class CreateTaskView(generics.CreateAPIView):
    queryset = Task.objects.all()
    serializer_class = TaskListSerializer
neverwalkaloner

引数PrimaryKeyRelatedFieldとともに使用てみてくださいqueryset

class TaskListSerializer(serializers.ModelSerializer):
    '''
    Will be serializing Task's data
    '''

    created_by = UserListSerializer(read_only=True)
    assigne_to = serializers.PrimaryKeyRelatedField(queryset=User.objects.filter(is_staff=True))

    class Meta:
        model = Task
        fields = ('assignment',
                  'assigne_to',
                  'task_name',
                  'is_done',
                  'created_by',)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

シリアライザーでフィールドの属性を取得する(django restフレームワーク)

カウントフィールドをdjango RESTフレームワークシリアライザーに追加する

django RESTフレームワークシリアライザーからフィールドを除外する

django RESTフレームワークのミドルウェアからログインページにユーザーをリダイレクトするにはどうすればよいですか?

django RestフレームワークのDecimalFieldシリアライザーに選択肢を提供する方法は?

django-rest-シリアライザー内のフレームワークアクセスフィールド

Djangoの再グループ化テンプレートタグを使用してリストアイテムを再グループ化した後、リストアイテムをシャッフル/ランダム化する方法

Django RESTフレームワーク、シリアライザーメソッドフィールドはdbへの変更を保存しませんか?

Django RESTフレームワークシリアライザーにfalseフィールドを追加するにはどうすればよいですか?

djangoフレームワーククラスベースのビューでログインしたユーザーに属するトランザクションの売上のみを表示するようにフィルタリングする方法

Django RESTフレームワークシリアライザーのフィールドを動的に除外または含める

DjangoのforeignKeyフォームドロップダウンをフィルタリングする方法

django RESTフレームワークで複数のファイルをアップロードする方法

Django:Django Restフレームワークを既存のアプリケーションに統合する方法は?

Django RESTフレームワーク:動的シリアライザー関係フィールド-POST pk、ただしGETハイパーリンク

Django日時フィールドと現在のタイムデルタをレンダリングする方法は?

Djangoレストフレームワークを使用してコンピューター内のファイルに写真をアップロードする方法

Django RESTフレームワーク、シリアライザー:追加データ?

Django RESTフレームワーク:非モデルシリアライザー

models.pyにシリアライザーをインポートする:DjangoのRESTフレームワーク

Django RESTフレームワーク:シリアライザーで関連モデルのフィールドを取得

Django RESTフレームワーク:シリアライザーで関連モデルのフィールドを取得

シリアライザーの更新メソッドは作成するだけで更新しません(Django Restフレームワーク)

Django RESTフレームワークのモデル/シリアライザーを正しく定義するにはどうすればよいですか?

Django RESTフレームワークで書き込み可能なネストされたシリアライザーを複製せずに複数のモデルインスタンスを作成するにはどうすればよいですか?

Django REST フレームワーク シリアライザの出力

Djangoのサインアップフォームのパスワードフィールドからプレーンパスワードを取得する方法

Django RESTフレームワーク、シリアライザーの深さ= 1の場合の外部キー関係のフィールドの制限

Django RESTフレームワーク:単純なForeignKey関係にシリアライザーを使用する

TOP 一覧

  1. 1

    Python / SciPyのピーク検出アルゴリズム

  2. 2

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  3. 3

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  4. 4

    androidsoongビルドシステムによるネイティブコードカバレッジ

  5. 5

    ZScalerと証明書の問題により、Dockerを使用できません

  6. 6

    Reactでclsxを使用する方法

  7. 7

    VisualStudioコードの特異点/ドッカー画像でPythonインタープリターを使用するにはどうすればよいですか?

  8. 8

    二次導関数を数値計算するときの大きな誤差

  9. 9

    Ansibleで複数行のシェルスクリプトを実行する方法

  10. 10

    STSでループプロセス「クラスパス通知の送信」のループを停止する方法

  11. 11

    ビュー用にサイズ変更した後の画像の高さと幅を取得する方法

  12. 12

    Three.js indexed BufferGeometry vs. InstancedBufferGeometry

  13. 13

    __init__。pyファイルの整理中に循環インポートエラーが発生しました

  14. 14

    三項演算子良い練習の代わりとしてOptional.ofNullableを使用していますか?

  15. 15

    エンティティIDを含む@RequestBody属性をSpringの対応するエンティティに変換します

  16. 16

    Spring Boot Filter is not getting invoked if remove @component in fitler class

  17. 17

    値間の一致を見つける最も簡単な方法は何ですか

  18. 18

    reCAPTCHA-エラーコード:ユーザーの応答を検証するときの「missing-input-response」、「missing-input-secret」(POSTの詳細がない)

  19. 19

    Rパッケージ「AppliedPredictiveModeling」のインストール中にエラーが発生しました

  20. 20

    画像変更コードを実行してもボタンの画像が変更されない

  21. 21

    好き/愛の関係のためのデータベース設計

ホットタグ

アーカイブ