Kadabrov, я имею модель, которая расширяет модель User:
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, verbose_name="Username")
photo = models.ImageField(verbose_name='Photo', upload_to='photo/%Y/%m/%d', blank=True)
location = models.CharField(verbose_name="Location", max_length=30, blank=True)
birth_date = models.DateField(null=True, blank=True, verbose_name="Date of birth")
about = models.TextField(blank=True, verbose_name="About")
nickname = models.CharField(max_length=128, verbose_name="Singer nickname", null=True)
Во views.py вот такая функция:
def show_user_form(request):
if request.method == 'POST':
#в данной строке ниже данные сохраняются через инстанс(сохраняются только в модель Profile)
#нужно, чтобы другая часть данных сохранялась и в модель User
form = RedactInfoUserForm(request.POST, request.FILES, instance=request.user.profile)
if form.is_valid():
form.save()
redirect('profile')
else:
form = RedactInfoUserForm(instance=request.user.profile, initial={'first_name':request.user.first_name, 'last_name':request.user.last_name, 'email':request.user.email })
return render(request, 'musiccloud/user_profile.html', {'form':form})
Так же форма, которая редактирует данные в моделях User и Profile:
Во views.py вот такая функция:
Так же форма, которая редактирует данные в моделях User и Profile: