我还在学习,其他问题都没有回答我的问题,为什么我必须要有HTTP响应?
def view(request):
namesTickers = Company.objects.all().values('name', 'ticker')
names, tickers = [], []
for nameTicker in namesTickers:
names.append(nameTicker['name'])
tickers.append(nameTicker['ticker'])
nameTickerDict = dict(zip(names, tickers))
print nameTickerDict
if 'ticker' in request.POST and request.POST['ticker']:
q = request.POST['ticker']
context = {}
context['companies'] = json.dumps(nameTickerDict)
context['companyInfo'] = Company.objects.filter(ticker__icontains=q)
context['financial'] = Financials.objects.filter(ticker__icontains=q).order_by('-year')
return render( request, "companies/view.html",[context])
答案 0 :(得分:1)
因为HTTP是请求/响应机制。您收到了请求,您必须回复它。但是,它不一定是成功的响应。如果您在没有ticker
的情况下无法做出有意义的回复,则可能会返回错误页面。或者,如果您有一个用户输入自动收报机并将其提交给view
的表单,那么您可能希望将用户返回到相同的表单,但会显示错误消息。如果是这样的话,Django的forms framework会帮助你。