3

저는 프로그래밍 초보자입니다. Jinja2 템플릿을 사용하여 내 Python 2.7 코드에 드롭 다운 메뉴에서 변수를 전달하려면 어떻게합니까? Google App Engine에서 webapp2 프레임 워크를 사용하고 있습니다.Jinja2에서 Python으로 변수 전달하기 드롭 다운 메뉴

내 코드는 현재 다음과 같습니다

class AccountNew(Handler): 
    def get(self): 
     activities = ['Select one', 'Camping', 'Hiking', 'Fishing'] 
     self.render('account-new.html', activities = activities) 

    def post(self): 
     acct_name = self.request.get('acct_name') 
     activity = self.request.get('activity') 
     self.write(acct_name) 
     self.write(activity) 

내 Jinja2 템플릿은 "계정 new.html"라는 이름이처럼 보이는 :

<form method="post"> 

    <label> 
    <div>Account Name</div> 
    <input type="text" name="acct_name" value="{{ acct_name }}"> 
    </label> 

    <label> 
    <div>Parent</div> 
    <select> 
     {% for activity in activities %} 
      <option value="{{ activity }}">{{ activity }}</option> 
     {% endfor %} 
    </select> 
    </label> 

    <input type="submit"> 

</form> 

acct_name 문자열을 다시 전달됩니다 , 액티비티 문자열은 빈 문자열로 반환됩니다. 어떤 통찰력이라도 대단히 감사하겠습니다.

답변

9

'name'속성을 선택 요소에서 제외했습니다. 이렇게해야합니다 :

<select name="activity"> 
    {% for activity in activities %} 
     <option value="{{ activity }}">{{ activity }}</option> 
    {% endfor %} 
</select> 
+0

완벽하게 작동합니다. 감사! – bholben