django - Serializer inheriting from ModelForm and field type/form type -


i have serializer (django rest framework) return model objects on request:

class mymodelserializer(serializers.modelserializer):     class meta:         model = mymodel 

after instantiating serializer in view, use serializer.data return key/value of fields:

class mymodelapiview(apiview):         def get(self, request, **kwargs):         obj_pk = kwargs.get('pk')         obj = mymodel.objects.get(pk=obj_pk)         serializer = serializers.mymodelserializer(obj)         return response(serializer.data) 

this example of returned in json:

{"firstname": "john", "lastname": "doe", "active": true} 

however, i'm using javascript generate form out of (dynamically generated form), , know type of field each key/pair value is, can generate form accordingly. i'm trying subclass modelserializer json returned this:

{"firstname": {"value": "john", "type": "textfield"},  "lastname": {...},  "active": {"value": true, "type": "booleanfield"}} 

this allow me generate right input types in form. best way this? there may easier way generate form dynamically json response using rest framework that's different (hopefully less tedious.) if so, i'd interested hear it!

thanks,

instead of going in direction of modifying json data. created new renderer instead, inspired htmlformrenderer , jsonrenderer. loop through data.fields.values generate json array objects label, text, , actual field in escaped html. ajax dynamic form can customized , fast.


Comments

Popular posts from this blog

PHP DOM loadHTML() method unusual warning -

python - How to create jsonb index using GIN on SQLAlchemy? -

c# - TransactionScope not rolling back although no complete() is called -