장고

2010-12-16 3 views
0

안녕에 결과 (통과/실패) 모든 내가장고

사례 다음 모델을 만드는 방법, 스위트 룸 나는 케이스를 전달하려는. 예를 들어, 내 html 템플릿에서 다음을가집니다.

<form action="" method="post">{%csrf_token%} 
      <input type="submit" value="Pass"> 
      <input type="submit" value="Failed"> 
     </form> 

데이터베이스에 버튼을 눌러 정보를 추가하고 싶습니다. 보기 :

def main (request): 
    result = Result(id=None, result='Pass', cashe=Case.objects.get(id=3), sudite=Suite.objects.get(id=2)) 
    result.save() 
    c = {} 
    c.update(csrf(request)) 
    if request.method == 'POST': # If the form has been submitted... 
     results = Result(request.POST) # A form bound to the POST data 
     if results.is_valid(): 
     HERE WILL BE CLEANED DATA AND ETC, BUT AT 1st I WANT TO CHECK IT 
      pass 
    return render_to_response('main.html', { 
              'suites': suites, 
              'cases': cases, 
              'result': result, 
              'host' : request.get_host() 
              }) 

만드는 법. 수동 및 검색 양식이 제대로 작동한다는 것을 읽었지만 다른 버튼을 사용하는 방법을 모르겠습니다.

재미있는 것, 내가 쉘을 통해 만들면 데이터가 성공적으로 추가됩니다. 하지만 다음 페이지에있는 localhost/main 페이지를 다시로드하는 경우 :

TypeError at /main/ 
__init__() got an unexpected keyword argument 'case' 

나를 미치게합니다. 예를 들어, 하나의 passfail 전화 -

답변

1

나는 이것이 당신의 제출 버튼 name 제공하는 것입니다 할 수있는 가장 쉬운 방법을 발견했습니다 감사합니다. 그런 다음 양식이 제출되면 키 pass 또는 failrequest.POST에 있는지 확인하십시오. 클릭 한 단추는 있어야하지만 다른 단추는 나타나지 않아야합니다.

+0

여기에 코드를 추가해주십시오. 나는 정말로 찔렀다. ( – kurd

+0

확실한 :' ' – girasquid

+0

오, 하지만 미안 해요 :(그것은 함께 노력했지만 ... 도움이되지 않습니다.) – kurd