前天用V友方法request.GET确实能够获取form的值,但是放到URL里面就会报错“name 'request' is not defined”,把代码中str(link[0])换成request.GET.get('q','')却又能传输到变量,是赋值问题还是其他什么问题。
报错内容:
NameError at /search/
request' is not defined
/home/mysite/urls.py in <module>
url(r'^search/', include('search.urls')), ...
▶ Local vars
views.py代码
from bs4 import BeautifulSoup
import urllib2
from django.template import Context,loader
from django.http import HttpResponse
keywords = str(request.GET.get('q',''))
url='https://www.baidu.com/s?wd=%s' % keywords
html=urllib2.urlopen(url).read()
soup = BeautifulSoup(html)
link = soup.find_all('div')
def index(request):
template = loader.get_template('index.html')
context = Context({'keyword':str(link[0])})
return HttpResponse(template.render(context))