2013-04-24 1 views
1

나는 ID가 PK 인 복수 <tr> 테이블이 있습니다. 나는이 <tr>을 Django 1.5 뷰에 POST 할 것이지만 데이터를 올바르게 보내는 방법을 모르겠습니다.Django 1.5 뷰에 jquery가있는 선택된 행을 게시하십시오.

나는이 javascript 함수를 만들었고 성공적으로 게시했지만 selected_rows의 ID를 보내는 방법과 클래스 기반 장고보기에서이를 검색하는 방법을 알지 못합니다.

function update() { 
    var selected_rows = $(".ui-selected"); 
    $.ajax({ 
     type: "POST", 
     url: "/confirm/", 
     data: { name: "selected_rows" }, 
     success: function(data) { 
      selected_rows.addClass('success'); 
     } 
    }); 
} 

나는 장고보기 나는 또한 시도했습니다 뭔가
class ConfirmView(TemplateView): 
    def post(self, queryset=None): 
     return HttpResponse("POST") 

처럼 생각

function update() { 
    var selected_rows = $(".ui-selected"); 
     selected_rows.each(function() { 
      $.ajax({ 
      type: "POST", 
      url: "/confirm/", 
      data: { id: $(this).attr("id") }, 
      success: function(data) { 
       $(this).addClass('success'); 
      } 
     }); 
    }); 
} 

class ConfirmView(TemplateView): 
    def post(self, queryset=None): 
     if self.request.POST['id']: 
      ModelName.objects.filter(pk=self.request.POST['id']).update(is_confirmed=True) 
     return HttpResponse("POST") 

그러나 나는 모든 처리하기 위해 더 나은 것 같아요 동일한 데이터베이스 큐에있는 행 대신에 위와 같이 그들을 분할하십시오. 하지만 위와 같이 나누면 성공적으로 업데이트되었는지 여부를 확인할 수 있습니다. 그러면 아마도 그렇게 좋을까요? 여기 TemplateView을 사용하는 이유
data: { name: selected_rows } //Do not put selected_rows in quotes 

는 또한, 당신에게 어떤 이점을 제공하지 않습니다

답변

0

당신은 할 필요가있다. 뭔가를 만들고 Ajax가 처리 할 응답을 보내면됩니다. 여기서 기능보기를 사용할 수 있습니다.

그것은해야한다 :

def post(self, request, *args, **kwargs): 
    name = request.POST['name'] 
당신은 클래스 기반의 뷰를 사용하는 경우

post의 서명은 버그가