views.py
class AddLocationPageView(FormView):
template_name = 'add_location.html'
form_class = LocationForm
success_url = '/add_location/location_added/'
def form_valid(self, form):
form.save()
return super(AddLocationPageView, self).form_valid(form)
models.py
type_choices = (
('Рассвет/Закат', 'Рассвет/Закат'),('Ландшафт', 'Ландшафт'),('Природа', 'Природа'),
('Вода', 'Вода'),('Животные', 'Животные'),('Люди', 'Люди'),
('Архитектура', 'Архитектура'),('Город', 'Город'),('Астрофото', 'Астрофото'),
('Панорама', 'Панорама'),('Транспорт', 'Транспорт'),('Свадьба', 'Свадьба'),
)
equip_choices = (
('Tripod', 'Tripod'),('Shutter Release Cable', 'Shutter Release Cable'),('Filters', 'Filters'),
('Cleaning Equipment', 'Cleaning Equipment'),('Rain Cover', 'Rain Cover'),('Flash/speedlight', 'Flash/speedlight'),
('Flash Radio Triggers', 'Flash Radio Triggers'),('Light Modifiers', 'Light Modifiers'),
('Wide Angle Lens', 'Wide Angle Lens'),('Telephoto Lens', 'Telephoto Lens'),
('Prime Lens', 'Prime Lens'),('Macro Lens', 'Macro Lens'),('Assistant', 'Assistant'),
)
visit_choices = (
('Январь', 'Январь'),('Февраль', 'Февраль'),('Март', 'Март'),
('Апрель', 'Апрель'),('Май', 'Май'),('Июнь', 'Июнь'),
('Июль', 'Июль'),('Август', 'Август'),('Сентябрь', 'Сентябрь'),
('Октябрь', 'Октябрь'),('Ноябрь', 'Ноябрь'),('Декабрь', 'Декабрь'),
)
class Location(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1)
name = models.CharField(max_length=100, verbose_name="Локация", default='')
types = models.CharField(max_length=50, verbose_name="Тип локации", choices=type_choices, default='')
equipment = models.CharField(max_length=50, verbose_name="Рекомендуемая экипировка", choices=equip_choices, default='')
visit_times = models.CharField(max_length=50, verbose_name="Лучшее время для съемки", choices=visit_choices, default='')
photos = models.ImageField(upload_to='photos', null=True, blank=True)
keywords = models.CharField(max_length=100, verbose_name="Ключевые слова", default='')
description = models.TextField(null=True, blank=True)
def __unicode__(self):
return self.name
forms.py
class LocationForm(forms.ModelForm):
class Meta:
model = Location
fields = ['name', 'types', 'equipment', 'visit_times', 'photos', 'keywords', 'description']
widgets = {
'name': forms.TextInput(attrs={'placeholder': 'Напр. Стоунхендж'}),
'types': forms.SelectMultiple(),
'equipment': forms.SelectMultiple(),
'visit_times': forms.SelectMultiple(),
'keywords': forms.TextInput(attrs={'placeholder': 'Напр. море, побережье, скалы'}),
'description': forms.Textarea(attrs={'placeholder': 'Любая информация, которую посчитаете нужной'})
}
Когда на странице заполняю поля и делаю выбор в полях селекта, то после нажатия кнопки на полях селекта выдает ошибку указанную в названии темы.
Спасибо за помощь!