Django 更新用户配置文件时出现问题

Django 更新用户配置文件时出现问题,django,django-models,django-profiles,Django,Django Models,Django Profiles,在编辑个人资料时遇到了一些小麻烦!下面的代码成功地更新了用户配置文件中的mug_shot列,但也删除了该特定记录的所有其他列数据。这很奇怪,因为Django应该自动区分更新/保存。更奇怪的是,其他地方的更新/保存似乎都可以正常工作 我有点不知所措 @login_required def add_mugshot(request): user = request.user profile = UserProfile.objects.get(user=user) if requ

在编辑个人资料时遇到了一些小麻烦!下面的代码成功地更新了用户配置文件中的mug_shot列,但也删除了该特定记录的所有其他列数据。这很奇怪,因为Django应该自动区分更新/保存。更奇怪的是,其他地方的更新/保存似乎都可以正常工作

我有点不知所措

@login_required
def add_mugshot(request):
    user = request.user
    profile = UserProfile.objects.get(user=user)
    if request.method == 'POST':
        profile_form = ProfileForm(request.POST, request.FILES, instance=profile)
        if profile_form.is_valid():
            new_profile = profile_form.save(commit=False)
            new_profile.user = user
            new_profile.save()

            return HttpResponseRedirect('/accounts/profile/')
    else:
        profile_form = ProfileForm(instance=profile)

    return render_to_response('accounts/add_mugshot.html', 
        RequestContext(request, {
            'profile_form': profile_form}))

我想知道这是否是您的表单模板中的内容。如果您没有显示所有字段,Django会将它们解释为空,并用空字段保存实例。

这是我能想到的最好的解释,但是,我的edit_profilerequest代码可以全部工作。我可以更新个人资料而不让照片栏消失。但是,如果我更新了照片,其余的记录数据就会消失。