sql >> Database >  >> RDS >> Mysql

Zeer eenvoudige gebruikersinvoer in django

Als ik het goed begrijp, wil je wat input van de gebruiker nemen, de database opvragen en de gebruikersresultaten tonen op basis van de input. Hiervoor kunt u een eenvoudig django-formulier maken dat de invoer overneemt. Vervolgens kunt u de parameter doorgeven aan een weergave in GET vraag en doorzoek de database voor het trefwoord.

BEWERKEN :Ik heb de code aangepast. Het zou nu moeten werken.

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>

Zorg er ook voor dat u uw sjablonen in een aparte map plaatst met de naam templates en voeg dit toe aan je settings.py :

TEMPLATE_DIRS = (
    os.path.join(os.path.dirname(__file__), '../templates').replace('\\','/'),
)


  1. Hoe toegang te krijgen tot MySQL vanaf een externe computer (niet localhost)?

  2. Hoe u het einde van de maand kunt krijgen in MariaDB

  3. Welke methoden kunnen worden gebruikt om verschillende versies van reeds bestaande databases te beheren?

  4. SqlConnection SqlCommand SqlDataReader IDisposable