2017-05-06 4 views
0

本当に私は約5時間の研究を行い、私が望むように動作するものを見つけることができませんでした。Django RESTシリアライザ、正確な値を表示

質問は単純なものです。私は等のシリアライザと、ゲームのためのREST Djangoフレームワークを構築したい

私は「ジャンル」(ゲームジャンル)をお願いしようとすると、JSONはこれを返す: Genre Serializer

理想的には、私はちょうど返すようにしたいです邪魔な "GenreTitle"のないゲームジャンルの値だけ、どこでも。

マイモデル:

class Genre(models.Model): 
    GenreTitle = models.CharField(max_length=30,verbose_name = 'Title') 
    GenreDescription = models.TextField(max_length=500,verbose_name = 'Description') 
    GenreImage = models.ImageField(null=True, verbose_name='Image') 

def __str__(self): 
    return self.GenreTitle 

マイシリアライザ:

class GenreSerializer(serializers.ModelSerializer): 
    class Meta: 
     model= Genre 
     fields=('GenreTitle',) 

私は、Djangoの開発者のためのケーキのPICEですけど、私はこれで初心者ですので、私は非常に苦労しています。

ありがとうございます!

答えて

1

すべてがすでに美しくdjango rest docs

に記載されてあなたはちょうどあなたがすべてのフィールドをしたい場合は、単にそれを行う、必要なフィールドを含める必要があります。

class GenreSerializer(serializers.ModelSerializer): 
    class Meta: 
     model = Genre 
     fields = '__all__' 

あなたは迷惑GenreTitleせずにすべてを必要とする場合は、除外それは

class GenreSerializer(serializers.ModelSerializer): 
    class Meta: 
     model = Genre 
     exclude = ('GenreTitle',) 

具体的な場合:

class GenreSerializer(serializers.ModelSerializer): 
    class Meta: 
     model = Genre 
     fields = ('GenreTitle', 'GenreDescription', 'GenreImage') 
+0

私の質問は結局はっきりしないと思いますが、残念です。 もう一度、 "Action、Platform、Adventure"などのようなデータしか必要としませんでした。 "GenreTitle:Action、GenreTitle:Platform、GenreTitle:Adventure"の代わりに – MagiciaN

+0

あなたはそのためにdjango restシリアライザは必要ありません。あなたはあなたの視点で '応答を返すだけで(Genre.objects.values_list( 'GenreTitle'、flat = True))'必要があります。 –

+0

私はあなたが私の質問を理解できる理由があると確信しています:P これはなぜ私がこれをしたいのかをより明確にするかもしれません。 これは私が達成したいことです:https://ibb.co/h7rzBQ – MagiciaN

関連する問題