Field.choices get all items as json

39 views
Skip to first unread message

Majid Hojati

unread,
May 17, 2018, 10:52:15 AM5/17/18
to Django users
Hi,
I have a Field.choices in my model. lets say it is:

YEAR_IN_SCHOOL_CHOICES = (
('FR', 'Freshman'),
('SO', 'Sophomore'),
('JR', 'Junior'),
('SR', 'Senior'),
)

I can access them using this method Model. YEAR_IN_SCHOOL_CHOICES  but how can I convert it to a json then I can send them using a webservice ? is there any good method?

C. Kirby

unread,
May 17, 2018, 12:16:42 PM5/17/18
to Django users
if you just want to put that into json do:
import json

YEAR_IN_SCHOOL_CHOICES
= (

   
('FR', 'Freshman'),
   
('SO', 'Sophomore'),
   
('JR', 'Junior'),
   
('SR', 'Senior'),
)


serialized_year_choices
= json.dumps(Model.YEAR_IN_SCHOOL_CHOICES)

Majid Hojati

unread,
May 18, 2018, 3:20:37 AM5/18/18
to Django users
In fact I want to convert all of these choises into json format and then send them to user 
thanks

Peter of the Norse

unread,
May 21, 2018, 1:35:28 AM5/21/18
to 'Anthony Flury' via Django users
Create a view that returns json.  At least if you want to use it in an ajax way.  Otherwise, I would recommend just passing it as an argument to the templates that use it.

import json

def years(request):
    return HttpResponse(json.dumps(dict(Model.YEAR_IN_SCHOOL_CHOICES)), content_type=‘application/json')

The dict is there to make sure you get it as an object instead of an array of arrays.

-- 
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/be3eabf9-939a-429f-a7c8-62ba30b98981%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages