PonyConf/planning/forms.py

21 lines
602 B
Python

from django import forms
from .models import Room
class RoomForm(forms.ModelForm):
class Meta:
model = Room
fields = ['name', 'label', 'capacity']
def __init__(self, *args, **kwargs):
self.site = kwargs.pop('site')
super().__init__(*args, **kwargs)
def clean_name(self):
name = self.cleaned_data['name']
if (not self.instance or self.instance.name != name) \
and Room.objects.filter(site=self.site, name=name).exists():
raise self.instance.unique_error_message(self._meta.model, ['name'])
return name