您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

django中非常简单的用户输入

django中非常简单的用户输入

如果我理解正确,则希望从用户那里获取一些输入,查询数据库并根据输入显示用户结果。为此,你可以创建一个简单的django表单,该表单将接受输入。然后,你可以将参数传递给GET请求中的视图,并在数据库查询关键字。

编辑:我已经编辑了代码。现在应该可以工作了。

views.py

from django.shortcuts import render
from django.shortcuts import HttpResponse
from .models import Person
from django.core.exceptions import *

def index(request):
    return render(request, 'form.html')

def search(request):
    if request.method == 'POST':
        search_id = request.POST.get('textfield', None)
        try:
            user = Person.objects.get(name = search_id)
            #do something with user
            html = ("<H1>%s</H1>", user)
            return HttpResponse(html)
        except Person.DoesNotExist:
            return HttpResponse("no such user")  
    else:
        return render(request, 'form.html')

urls.py

from django.conf.urls import patterns, include, url
from People.views import *

urlpatterns = patterns('',
    url(r'^search/', search),
    url(r'^index/', index)
)

form.html

<form method="POST" action="/search">
{% csrf_token %}
<input type="text" name="textfield">

<button type="submit">Upload text</button>
</form>

另外,请确保将模板放置在名为的单独文件夹中templates,并将其添加到你的中settings.py:

TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), '../templates').replace('\\','/'),
)
Go 2022/1/1 18:21:08 有533人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶