我如何编写 jQuery 输入字符串以便它与 Django 查询字符串一起使用
How do i write a jQuery input string so that it works with Django query string
我正在开发一个名称搜索应用程序,但在使用 Django 查询字符串时遇到了挑战,我观察到的挑战来自于我的 JavaScript 添加到 Django 时带有 ${input} 字符串的输入类型查询字符串例如。 “address/get-name/?search=${input}” 不是 return 查询对象或负载数据,而是 return 一个空列表,但是当我通过浏览器进行搜索时它 return 所有搜索查询数据,例如“address/get-name/?search=smith”,现在我如何通过我的脚本获取输入而不必使用 java 脚本查询输入类型 ${input } 使用 Django 让我得到一个像这样的查询字符串“address/get-name/?search=james”?这是我的脚本,我是 JavaScript
的新手
<script>
new Autocomplete('#autocomplete',{
search : input => {
console.log(input)
const url = "/address/get-names/?search=${input}"
return new Promise(resolve => {
fetch(url)
.then( (response) => response.json())
.then( data => {
console.log(data.playload)
resolve(data.playload)
})
})
},
renderResult : (result, props) =>{
console.log(props)
let group = ''
if (result.index % 3 == 0 ){
group = '<li class="group">Group</li>'
}
return '${group}<li ${props}><div class="wiki title">${result.name}</div></li>'
}
})
</script>
我的view.py
def get_names(request):
search = request.GET.get('search')
payload = []
if search:
objs = Names.objects.filter(name__startswith=search)
for obj in objs:
payload.append({
'name' : obj.name
})
return JsonResponse({
'200': True,
'playload': payload
})
问题是你的 javascript 语法,它是
const url = `/address/get-names/?search=${input}`
而不是
const url = "/address/get-names/?search=${input}"
我正在开发一个名称搜索应用程序,但在使用 Django 查询字符串时遇到了挑战,我观察到的挑战来自于我的 JavaScript 添加到 Django 时带有 ${input} 字符串的输入类型查询字符串例如。 “address/get-name/?search=${input}” 不是 return 查询对象或负载数据,而是 return 一个空列表,但是当我通过浏览器进行搜索时它 return 所有搜索查询数据,例如“address/get-name/?search=smith”,现在我如何通过我的脚本获取输入而不必使用 java 脚本查询输入类型 ${input } 使用 Django 让我得到一个像这样的查询字符串“address/get-name/?search=james”?这是我的脚本,我是 JavaScript
的新手<script>
new Autocomplete('#autocomplete',{
search : input => {
console.log(input)
const url = "/address/get-names/?search=${input}"
return new Promise(resolve => {
fetch(url)
.then( (response) => response.json())
.then( data => {
console.log(data.playload)
resolve(data.playload)
})
})
},
renderResult : (result, props) =>{
console.log(props)
let group = ''
if (result.index % 3 == 0 ){
group = '<li class="group">Group</li>'
}
return '${group}<li ${props}><div class="wiki title">${result.name}</div></li>'
}
})
</script>
我的view.py
def get_names(request):
search = request.GET.get('search')
payload = []
if search:
objs = Names.objects.filter(name__startswith=search)
for obj in objs:
payload.append({
'name' : obj.name
})
return JsonResponse({
'200': True,
'playload': payload
})
问题是你的 javascript 语法,它是
const url = `/address/get-names/?search=${input}`
而不是
const url = "/address/get-names/?search=${input}"