У меня есть приложение, которое позволяет вам создать профиль. Одна из возможностей моего приложения - это позволить вам отредактировать свое имя и загрузить изображение.Django Ошибка отправки формы
Проблема заключается в том, что пользователь не может отправить изображение, если только он не наберет свое имя. Как я могу исправить эту страницу, чтобы сделать это, если пользователь отправил изображение, но не отправил имя. Он все равно будет иметь свое старое имя или если он не отправит изображение и не изменит свое имя. У него все еще будет его старая картина?
Я попытался добавлением пустого = True и нуля = False, нуля = True, но не похоже, чтобы сделать работу
Моим models.py
class Person(models.Model):
user = models.ForeignKey(User)
name = models.CharField(max_length=100,null=True,blank=False)
image = models.FileField(upload_to="images/")
def __unicode__(self):
return self.name
Моим forms.py
class PersonForm(forms.ModelForm):
class Meta:
model = Person
fields = ('image','name',)
Мой views.py
def Display(request):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
if request.method == 'POST':
form = PersonForm(request.POST, request.FILES)
if form.is_valid():
person = Person.objects.get(user=request.user)
person.image = form.cleaned_data['image']
person.name = form.cleaned_data['name']
person.save()
return render(request,'edit.html',{'form': PersonForm()})
Вы удалили базу данных и синхронизировали снова после изменения поля имени? – catherine
@catherine nope okay Я сделаю это сейчас, но catherine (max_length = 100, null = True, blank = False) прав? – donkeyboy72
это CharField, поэтому '(max_length = 100, blank = True)' – catherine