我的潜在困难是我无法理解django模板,视图和网址是如何绑在一起的...提示用户输入字符串的最简单,最简单的方法是什么,然后使用该字符串查询数据库(最好w/python模型不是原始的SQL查询)?我应该使用GET和POST方法吗?我应该使用表格吗?我需要使用模板还是可以使用通用视图?
当我尝试提交输入时,它只是重新加载输入页面.
views.py:
from django.shortcuts import render
from django.shortcuts import HttpResponse
from People.models import Person
def index(request):
return render(request, 'People/index.html')
def search(request):
search_id = request.POST.get('textfield', None)
try:
user = Person.objects.get(MAIN_AUTHOR = search_id)
#do something with user
html = ("<H1>%s</H1>", user)
return HttpResponse(html)
except Person.DoesNotExist:
return HttpResponse("no such user")
Run Code Online (Sandbox Code Playgroud)
urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^People/', 'People.views.index'),
url(r'^People/send/', 'People.views.search'),
)
Run Code Online (Sandbox Code Playgroud)
模板:
<form method="POST" action="send/">
{% csrf_token %}
<input type="text" name="textfield"> …Run Code Online (Sandbox Code Playgroud)