瀏覽代碼

Closes #8894: Add first and last name to APISelect widget if set

Alex Gittings 4 年之前
父節點
當前提交
bc2491e6b7
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      netbox/users/api/nested_serializers.py

+ 6 - 0
netbox/users/api/nested_serializers.py

@@ -23,11 +23,17 @@ class NestedGroupSerializer(WritableNestedSerializer):
 
 
 class NestedUserSerializer(WritableNestedSerializer):
 class NestedUserSerializer(WritableNestedSerializer):
     url = serializers.HyperlinkedIdentityField(view_name='users-api:user-detail')
     url = serializers.HyperlinkedIdentityField(view_name='users-api:user-detail')
+    display = serializers.SerializerMethodField(read_only=True)
 
 
     class Meta:
     class Meta:
         model = User
         model = User
         fields = ['id', 'url', 'display', 'username']
         fields = ['id', 'url', 'display', 'username']
 
 
+    def get_display(self, obj):
+        if obj.first_name and obj.last_name:
+            return f"{obj.username} ({obj.first_name} {obj.last_name})"
+        return obj.username
+
 
 
 class NestedTokenSerializer(WritableNestedSerializer):
 class NestedTokenSerializer(WritableNestedSerializer):
     url = serializers.HyperlinkedIdentityField(view_name='users-api:token-detail')
     url = serializers.HyperlinkedIdentityField(view_name='users-api:token-detail')