ajax 从django后台获取唯一省份信息后传给前台做<select>用

后台有个表,大概是这样的

model名为province_city

province  city
浙江       杭州
浙江       嘉兴
上海       黄埔
上海       浦东
四川       成都

现在我前端有个select的选项,想要从这个表中获取省份名称作为选项

django这边我试了方法,都有问题,我先尝试了下面这种,说是In order to allow non-dict objects to be serialized set the safe parameter to False.

def get_province_date(request):
	province_date=Province_City.objects.values('province').order_by('province').distinct()

	return JsonResponse(province_date)

然后我再试了下面这样的,又说Object of type QuerySet is not JSON serializable

def get_province_date(request):
	province_date=Province_City.objects.values('province').order_by('province').distinct()

	return JsonResponse(province_date,safe=false)

我又试了  'dict' object has no attribute '_meta'

def get_province_date(request):
	province_date=serializers.serialize('json',Province_City.objects.values('province').order_by('province').distinct())

	return JsonResponse(province_date,safe=false)

 。。。

搞不定了。。。

 

怎么弄。。。然后前台ajax拿到这个数据之后应该怎么用。。新手小白,多谢多谢

 

province_date=list(Province_City.objects.values('province').order_by('province').distinct())



 

return JsonResponse({"province_date": province_date})

打断点看哪一步出错,第3个图你用Objects obj=Province_City.objects.values('province').order_by('province').distinct();在有错误的情况下,尽量把每一步分开来确定是那一步出问题。拿到数据之后是要做个下拉框吧,网上挺多的

province_data=Province_City.objects.value_list('province', flat=True);

return JsonResponse({"province_data": province_data})