溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python+django實(shí)現(xiàn)的簡(jiǎn)單的表單驗(yàn)證源碼

發(fā)布時(shí)間:2020-06-16 21:21:53 來(lái)源:網(wǎng)絡(luò) 閱讀:253 作者:cosmos2031 欄目:編程語(yǔ)言

下面的內(nèi)容段是關(guān)于python+django實(shí)現(xiàn)的簡(jiǎn)單的表單驗(yàn)證的內(nèi)容,應(yīng)該能對(duì)大伙也有用途。

<html>
<head>
  <title>Form validation example</title>
  <link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}css/bootstrap.css">
</head>
<body>

  <div class="col-sm-8">
    <h3>Form validation example</h3>
    {% if form.errors %}
    <div class="text-danger">Please correct the error{{ form.errors|pluralize }} below.</div>
    {% endif %}
    <p>
    <div class="form-horizontal">
      <form action="" method="post" role="form">{% csrf_token %}

        <div class="form-group row {% if form.subject.errors %}has-error{% endif %}">
           <label for="id_subject" class="col-sm-3 control-label">Email subject:</label>
           <div class="col-lg-5">
            {{ form.subject }}
            {% if form.subject.errors %}
              <span class="help-block">
                {% for error in form.subject.errors %}{{ error }}{% endfor %}
              </span>
            {% endif %}
          </div>
        </div>

        <div class="form-group row {% if form.email.errors %}has-error{% endif %}">
          <label for="id_sender" class="col-sm-3 control-label">Email address:</label>
          <div class="col-lg-5">
          {{ form.email }}
            {% if form.email.errors %}
              <span class="help-block">
                {% for error in form.email.errors %}{{ error }}{% endfor %}
              </span>
            {% endif %}
          </div>
        </div>

        <div class="form-group row {% if form.message.errors %}has-error{% endif %}">
          <label for="id_message" class="col-sm-3 control-label">Message:</label>
          <div class="col-lg-5">
            {{ form.message }}
            {% if form.message.errors %}
              <span class="help-block">
                {% for error in form.message.errors %}{{ error }}{% endfor %}
              </span>
            {% endif %}
          </div>
        </div>

        <div class="form-group row">
          <div class="col-sm-5 col-sm-offset-3">
            <input type="submit" value="Validate form" class="btn btn-primary" />
          </div>
        </div>
      </form>
    </div>
  </div>
</body>
</html>

forms.py

from django import forms

class ContactForm(forms.Form):
  """
  define a contact form class
  """
  # this will be rendered like
  # <input class="form-control" id="id_subject" name="subject" size="48" type="text">
  # valid if not empty
  subject = forms.CharField(widget=forms.TextInput(attrs={'size':'48', 'class':'form-control'}))
  # A CharField that checks that the value is a valid email address.
  email = forms.EmailField(widget=forms.TextInput(attrs={'size':'48', 'class':'form-control'}))
  message = forms.CharField(widget=forms.Textarea(attrs={'cols':50, 'rows': 5 , 'class':'form-control'}))

views.py

from django.shortcuts import render
from .forms import ContactForm

def contact(request):
  if request.method == 'POST':
    # get data from POST request to contactform
    form = ContactForm(request.POST)
  else:
    form = ContactForm()

  data = {
    'form': form,
  }
  return render(request, 'contact_form.html', data)
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI