Форум сайта python.su
Делаю не заполненую форму с одним заполненым полем - текущий пользователь
models.py
class Estates(models.Model):
userprofile = models.ForeignKey(UserProfile, verbose_name=u'Пользователь', default=1)
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True, verbose_name=u'Пользователь')
И стандартная User
model_formset = modelformset_factory(Estates, form=EstatesForm, extra=1, can_delete=True)
if request.POST:
formset = model_formset(request.POST, request.FILES, queryset=Estates.objects.filter(userprofile__user__username__exact=username))
if formset.is_valid():
formset.save()
estates_objects = formset.save(commit=False)
formset.save()
for obj in estates_objects:
obj.userprofile_id = request.user.id # :( проблема тут
obj.save()
return HttpResponseRedirect('')
else:
formset = model_formset(queryset=Estates.objects.filter(userprofile__user__username__exact=username))
return render(request, template_name, dict(formset=formset))
Офлайн
А зачем так забубенно, и что мешает в Estates иметь User, a не UserProfile?
Зная пользователя вы же всегда можете и профиль нужный дернуть.
ЗЫ: Сейчас в джанге уже не обязательно профили иметь, можно модель пользователя наследовать и расширять.
Офлайн