2014-01-18 1 views
0

이것은 장고가 작동하는 방식을 이해하는 것입니다.
브라우저의 주소 표시 줄에서 urls.py가 일치하는 주소를 검색합니다. 주소가 발견되면 다음 단계는 views.py 에서 def()에 액세스하는 것입니다. def()는 데이터를 처리하고 웹 페이지로 다시 전달합니다.사용자 입력에서 Django보기로 여러 값 전달하기

내가하고 싶은 일은 웹 페이지에서 두 개의 입력 날짜를 가져 와서 views.def()로 전달하는 것입니다. 웹 페이지에 더 많은 데이터 항목을 저장합니다. 그렇다면 어떻게 작동합니까?

유래 메시지 Passing objects from template to view using Django METHOD = "POST"온 test.html를

{% extends 'base.html' %} 
{% block content %} 
    <br /><br /> 
    <form action="" method="get"> 
     <label for="from">Start Date</label> 
      <input type="text" name="start_date"><br /><br /> 
     <label for="to">End Date &nbsp;</label> 
      <input type="text" name="end_date"><br /> 
     <input type="submit" value="Submit"> 
    </form> 
    <p>{{ s_date }}</p> 
    <p>{{ e_date }}</p> 
{% endblock %} 

views.py

def Test(request): 
    if 'start_date' in request.GET: 
     s_date = request.GET['start_date'] 
     e_date = request.GET['end_date'] 
    else: 
     s_date = None 
     e_date = None 
    context = {"s_date": s_date, "e_date": e_date} 
    return render_to_response('test.html', context, context_instance=RequestContext(request)) 

사용된다. 나는 단지 데이터를 읽으 려하므로 method = "get"이 더 좋을까요?

날짜가 yyyy-mm-dd 형식으로 저장됩니다.

기능이 작동 중입니다. 템플릿에서 함수로 변수가 전달되는 것과 관련하여 제가 누락 된 부분을 알고 싶습니다.

감사합니다.

답변

1

예를 들어 request.GET['start_date']request.GET['end_date']과 같이 request.GET을 사용하여 GET 파 미터에 액세스 할 수 있습니다.

+0

안녕하세요 루드윅. 죄송 합니다만 나는 그것이 무엇을 의미하는지 이해하지 못합니다. 설명 좀 해줄 수 있겠 니? –

+0

보기에서 양식에서 전송 한 데이터에 액세스하는 방법을 설명했습니다. 정확히 당신에게 명확하지 않은 것은 무엇입니까? –

+0

제발 레벨 0으로 돌아 가야합니다. 위의 html 코드는 "start_date"및 "end_date"값을 함수 def BetweenDates (request)로 전달할 가능성이 있습니까? http://stackoverflow.com/questions/8429407/unboundlocalerror-local-variable-prod-available-referenced-before-assignment에서 볼 수있는 것처럼 "def get_hotel_sum_quantity (self, product_id, checkin_date, checkout_date) :"와 같은 추가 인수가 필요합니까? ? 템플릿에서 두 날짜를 다시 장고 Books v2에서 작동하는 예제를 볼 수 없습니다. –