我想与Profile(用户扩展)模型一起更新内置的User模型。
这是 forms.py :
class UserUpdateForm(forms.ModelForm):
class Meta:
model = auth_models.User
fields = ['first_name', 'last_name', 'email']
class ProfileUpdateForm(forms.ModelForm):
class Meta:
model = Profile
fields = ['date_of_birth']
这是我的 view.py :
class ProfileUpdateView(LoginRequiredMixin, generic.UpdateView, MultiModelForm):
model = Profile
fields = '__all__'
def get_object(self, *args, **kwargs):
username = self.request.user
return get_object_or_404(Profile, user__username__iexact=username)
def get_success_url(self):
return reverse('accounts:profile')
这只是编辑个人资料字段。
我也测试了django-betterforms,但无法使其正常工作。我可以使用get_context_data()显示2种形式,但是我无法保存到模型中,而这仅仅是HTML。
我只想知道第二种形式的get_object如何?