【发布时间】:2017-01-18 19:43:25
【问题描述】:
我有一个模型 Linea,只有一个名为 numero 的字段,它是一个字符集(numero 的值应该是数字) .我想做一个表单,用户可以在其中搜索 numero 的值。如果数据库中存在用户输入的数字,则视图将重定向到显示有关 numero 值的信息的模板,但如果用户搜索的值不在数据库中,它将抛出一个错误。
我是 Django 的新手,我已经搜索了实现它的方法,但我无法实现。
forms.py
from django import forms
from .models import Linea
class LineaForm(forms.ModelForm):
class Meta:
model = Linea
fields = ('numero',)
models.py
from __future__ import unicode_literals
from django.db import models
class Linea(models.Model):
numero = models.CharField(max_length=2)
def __str__(self):
return self.numero
views.py
from django.shortcuts import render, redirect, reverse
from .forms import LineaForm
from django.http import HttpResponseRedirect
import googlemaps
from datetime import datetime
def lineas(request, template="bustopaplineas.html"):
if request.method == "POST":
form = LineaForm(request.POST)
if form.is_valid():
numero = form.save(commit=False)
linea_numero = str(numero)
return redirect('lineas_detalles', linea_numero=linea_numero)
else:
form = LineaForm()
return render(request, 'bustopapp/lineas.html', {'form': form})
提前致谢。
【问题讨论】:
标签: python django validation django-models django-forms