Есть модель:
class Guild(models.Model):
name = models.CharField()
master_nickname = models.CharField()
callback = models.CharField()
logo = ThumbnailImageField()
top = models.BooleanField()
points = models.PositiveIntegerField()
создаю форму из модели:
class GuildForm(forms.ModelForm):
class Meta:
model = Guild
fields = ('name','master_nickname','callback','logo',)
Обрабатываю форму:
def guild_add(request):
if request.method == 'POST':
form = GuildForm(request.POST)
if form.is_valid():
form.save()
url_redirect = '/'
return HttpResponseRedirect(url_redirect)
else:
return render_to_response('index.html',locals())
else:
form = GuildForm()
return render_to_response('index.html',locals())
ThumbnailImageField в модели это расширение класса ImageField.
Поле logo обязательное.
форма во вьюхе заполняется из request.POST.
НО! Поле logo это файл, соответственно оно передаётся в request.FILES. т.е в form оно не попадает и форма не проходит валидацию.
Как быть?