Перекрестная проверка и проверка двух полей ввода в Django - PullRequest
0 голосов
/ 19 сентября 2019

Я новичок в Python и Django, я хотел бы знать, как это может быть ниже?

input field 1 - Enter name - abc@yoyo.com
input field 2 - Enter Url - www.yoyo.com
 Submit button

, поэтому я хочу проверить домен электронной почты, и имя URL такое же .Предположим, что abc@yoyo.com не похож на поле URL (www. yo.com ), поэтому выведите ошибку.иначе, если это то же самое, продолжайте.

Как это можно реализовать в Django?

1 Ответ

0 голосов
/ 19 сентября 2019

Вы можете сделать это либо во внешнем интерфейсе, либо во внутреннем интерфейсе

Реализация интерфейса с Javascript.

<input id="email" type="text"> <br>
<input id="domain_id" type="text" onblur="checkDomain()">

<button type="button">Submit</button>

<script>
function checkDomain() {
  var domain = document.getElementById("email").value.split("@")[1];
  var domain2 = document.getElementById("domain_id").value;

  if (domain != domain2){
  alert("Domains don't match"); 
  }

}
</script>

Backendреализация в Django (предполагает использование форм Django)

Вы должны поместить это в файл forms.py в вашей форме.

    def clean_domain(self):
        email = self.cleaned_data.get('email')
        domain= self.cleaned_data.get('domain')
        email_domain = #some method to get the domain of the email
        if email_domain != domain:
            raise forms.ValidationError(u'The domain must match the domain in your email')
        return domain

...