Как использовать Property в модели Django Rest Framework?
Я новичок в Django Rest Framework. У меня проблема с использованием Property в Django rest framework
Моя модель
class AwsConsoleAccess(TimeStampedModel):
_resources = CharField(max_length=4096)
@resources.setter
def resources(self, resources: List[str]):
self._resources = ','.join(resources)
@property
def resources(self) -> List[str]:
if self._resources:
return self._resources.split(',')
return []
Мой сериализатор
class AwsConsoleAccessSerializer(ModelSerializer):
class Meta:
model = AwsConsoleAccess
fields = '__all__'
Мое мнение
def post(self, request, *args, **kwargs):
serializer = AwsConsoleAccessSerializer(data=request.data)
serializer.is_valid(raise_exception=True)
serializer.save()
Мой запрос curl
http://localhost:8000/access/842b1012-53ef-4e98-9a20-484e681c3789
request body:
{
"resources": [
{
"id": "dev-atm-jr1-platformcanary-APPLICATION"
}
]
}
Ответ
{
"_resources": [
"This field is required."
]
}
status code - 400 bad request
Если я переименую resources в _resources в request_body, он не примет List[str] .
Я хотел установить список строк