Django REST serileştiricilerindeki alt çizgi etiketli JavaScript-ish camelCase'i kullanmasına izin veren djangorestframework-camel-case adlı proje var.camelCase POST verileri Django REST Framework
{
"camelCase": "foo"
}
Ve Serializer aşağıdaki ile alırsınız:: Yani, temel olarak, ben gönderebilir
class MySerializer(serializers.Serializer):
session_id = serializers.CharField()
POST verileri için benzer bir şey var mı? Bu yüzden POST aracılığıyla camelCase=foo
gönderebilir ve diziselleştiricimde bir alt çizgi alanına alabilirim?
Ben FormParser dayalı kendi ayrıştırıcı uygulanması çalıştı: initialized
aslında basılmış iken, settings.py içinde DEFAULT_PARSER_CLASSES
eklemeden sonra,
class CamelCaseFormParser(FormParser):
media_type = 'application/x-www-form-urlencoded'
def __init__(self):
print("initialized")
def parse(self, stream, media_type=None, parser_context=None):
print("parse")
...
Ve parse
değildir. Öyle görünüyor ki, POST verisi durumunda, ayrıştırıcı kullanılmamaktadır. Serileştiriciler böyle kullanıldığından
:
Serializer(data=request.data)
Ben Serializer sınıflara ve daha sonra işleme girmeden önce data
değiştirerek, hatta bir Serializer oluşturmadan önce onu değiştirerek düşünüyorum. Ama sorduğum şey, tüm Serializer'lar için alt sınıflara ayırmadan çalışmak için daha uygun bir yol.