2010-06-22 3 views
1

사용자 프로필에 액세스 할 때 숨겨야 할 응용 프로그램을 선택하는 개인 정보 양식이 있습니다. 양식에 여러 개의 확인란이 포함되어 있으며 사용자가 숨길 항목을 확인합니다. 내가 원하는 것은 사용자가이 양식에 액세스 할 때 양식이 이미 저장된 경우 개인 양식의 인스턴스가되도록 양식을 저장하는 것입니다. 내 말은, 이미 폼 1에 숨어있을 때 폼에 다시 액세스 할 때 해당 확인란을 선택해야합니다.Django는 데이터베이스 필드에서 양식을 미리 채 웁니다.

내 코드 :

def save_privacy(request): 
    if request.method == 'POST': 
     try: 
      u = Privacy.objects.get(user_privacy = request.user) 
      form = PrivacyForm(request.POST, instance=u) 
     except ObjectDoesNotExist: 
      form = PrivacyForm(request.POST, request.FILES) 
     if form.is_valid():   

      new_obj = form.save(commit=False) 
      new_obj.user_privacy = request.user 

      new_obj.save() 
      return HttpResponseRedirect('/accounts/private_profile/')  
    else: 
      form = PrivacyForm()  
    return render_to_response('privacy/set_privacy.html', { 
      'form': form, 
      }, 
      context_instance=RequestContext(request)) 

및 내 양식 :

class PrivacyForm(ModelForm): 
    class Meta: 
      model = Privacy 
      fields = ['restrict_cv','restrict_blog','friends_of_friends','restrict_followers','restrict_following'] 

답변

5

당신은 당신이 당신이 게시물에 대한 다만처럼 다른 절에서 양식을 인스턴스화 할 때 인스턴스를 설정해야합니다.

+0

네, 맞습니다! 지금 당장! 고마워! – dana

관련 문제