2016-09-08 9 views
2

私はDjango Rest Framework認証システムを使用しています。デフォルトのユーザテーブルが付属しています。このテーブルでは、2つの異なるcharフィールドで姓と名が分割されます。Django Restフレームワークシリアライザで2つのフィールドを1つにマージ

シリアライザでこれら2つのフィールドを結合することはできますか?このような何か:

class UserSerializer(serializers.ModelSerializer): 
    full_name = serializers.CharField(source='user.first_name' + ' ' + 'user.last_name') 

私は次の応答を取得なるように:

{ 
    full_name: "firs_name last_name" 
} 

答えて

7

をあなたのシリアライザでメソッドを作成し、SerializerMethodField

class UserSerializer(serializers.ModelSerializer): 
    full_name = serializers.SerializerMethodField() 

    def get_full_name(self, obj): 
     return '{} {}'.format(obj.first_name, obj.last_name) 
+0

良いもので、それを表示することができます! !!!! – doniyor

関連する問題