first commit
This commit is contained in:
commit
b54624be96
226 files changed
+108840
No files matched your search
@@ -0,0 +1,60 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
from apps.sync.models import CitySite
|
||||
|
||||
|
||||
class CitySiteSerializer(serializers.ModelSerializer):
|
||||
id = serializers.IntegerField(source="pk", read_only=True)
|
||||
# Never echo the outbound city API key back to the browser by default.
|
||||
has_api_key = serializers.SerializerMethodField()
|
||||
registered_by_name = serializers.CharField(
|
||||
source="registered_by.user_name", read_only=True, allow_null=True
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = CitySite
|
||||
fields = [
|
||||
"id",
|
||||
"code",
|
||||
"name",
|
||||
"api_base_url",
|
||||
"has_api_key",
|
||||
"registered_by",
|
||||
"registered_by_name",
|
||||
"is_active",
|
||||
"last_synced_at",
|
||||
"last_sync_status",
|
||||
"last_sync_message",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
]
|
||||
read_only_fields = [
|
||||
"id",
|
||||
"has_api_key",
|
||||
"registered_by",
|
||||
"registered_by_name",
|
||||
"last_synced_at",
|
||||
"last_sync_status",
|
||||
"last_sync_message",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
]
|
||||
|
||||
def get_has_api_key(self, obj: CitySite) -> bool:
|
||||
return bool(obj.api_key)
|
||||
|
||||
|
||||
class CitySiteWriteSerializer(serializers.ModelSerializer):
|
||||
id = serializers.IntegerField(source="pk", read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = CitySite
|
||||
fields = [
|
||||
"id",
|
||||
"code",
|
||||
"name",
|
||||
"api_base_url",
|
||||
"api_key",
|
||||
"is_active",
|
||||
]
|
||||
extra_kwargs = {"api_key": {"write_only": True, "required": False}}
|
||||
Reference in new issue
Block a user