django读取mysql字段在页面显示_django项目中在后台获取了数据库的某一列,如何将其显示在html模板中的select标签内的option选项下?...

问题描述

不好意思,本人是一个初学者,在尝试用django制作网站的时候遇到了一个问题,网上搜索了很久,苦于没有答案,想请教一下。想要实现的是在前端html里有一个select下拉框中的选项中的值在后台数据库中自动获取。

问题出现的环境背景及自己尝试过哪些方法

自己的思路是前端用javescript fetch API 来获取数据,然后循环打印输出到option选项中(这里的代码写法不是很清楚),后台是用django的orm去数据库中取数据(这里我尝试了两种数据格式,返回一个list或者是一个json格式,但是前台的好像都无法获取到) 我感觉应该是我的循环的写法语法有问题,而且后台返还的数据格式也不太清楚具体要使用哪一种。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

html中的代码:

// get select options

fetch('/api/getSelectOption')

.then(res => res.json())

.then((responseJson)=>{

var selectobj=document.getElementById('test');

for (var i = 0; i

selectobj.options.add(new Option(responseJson[i]))

})

//后台获取数据的代码

def select(request):

search_name=models.Webtest.objects.values('name')

select_list=list(search_name)

return JsonResponse(select_list, safe=False)

你期待的结果是什么?实际看到的错误信息又是什么?

584136db9cdb6997d5ea57e96bd37afd.png

实际在chrome中看到获取的数据是这样的,是不是我返还的数据格式有问题,前台获取并打印的具体的写法是怎么样的

呢,很不好意思,接触python和js只有2周的时间,感觉我的写法上面有很多问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值