forms.py
1.17 KB
from django import forms
from .models import Link
from django.utils.translation import ugettext_lazy as _
from django.core.exceptions import ValidationError, FieldError
import requests
class CreateLinkForm(forms.ModelForm):
def clean_link_url(self):
link_url = self.cleaned_data['link_url']
try:
response = requests.head(link_url)
if response.status_code >= 400:
raise forms.ValidationError(_('Invalid url!'))
except requests.ConnectionError:
raise forms.ValidationError(_('Invalid url!'))
return link_url
class Meta:
model = Link
fields = ['name','link_url','link_description']
class UpdateLinkForm(forms.ModelForm):
def clean_link_url(self):
link_url = self.cleaned_data['link_url']
try:
resposta = requests.head(link_url)
if resposta.status_code >= 400:
raise forms.ValidationError(_('Invalid url!'))
except requests.ConnectionError:
raise forms.ValidationError(_('Invalid url!'))
return link_url
class Meta:
model = Link
fields = ['name','link_url','link_description']