Jinja2 템플릿과 함께 Python Pyramid를 사용하고 있습니다. 양식 데이터를 세션에 저장하고 다른 HTML 페이지에서 가져 오려고합니다. 데이터를 전달하기 위해 어떻게 변경해야합니까? View121에서 키를 저장하는 방법을이 request.session['postal'] = 01934
과 같은 세션으로 만 알고 있지만 이는 Delivery.jinja2의 키가 아닙니다. print (session['postal'])
을 사용하면 내 명령 프롬프트에만 표시되지만 HTML 페이지에는 표시되지 않습니다. 누구든지 나를 도울 수 있습니까? 나는 이것에 초보자입니다.Python Pyramid - 세션을 사용하여 양식 데이터를 다른 페이지로 전달
내 Views.py에 추가/변경 사항은 무엇인가요?
내 HTML : Delivery.jinja2
<form class="form-horizontal" method="POST">
<div class="form-group">
<label class="control-label col-md-2" for="postal">Postal Code:</label>
<input type="text" class="form-control" id="postal" placeholder="Enter Postal Code" name="postal" />
</div>
<div class="form-group">
<label class="control-label col-md-2" for="address">Detailed Address:</label>
<textarea class="form-control" rows="3" id="address" placeholder="Enter Address" name="address"></textarea>
</div>
<div class="form-group">
<label class="control-label col-md-2" for="unit">Unit No #:</label>
<input type="text" class="form-control" id="unit" placeholder="Enter Unit No" name="unit" />
</div>
<button type="submit" class="btn btn-default" name="submit">Submit</button>
</form>
Views.py
@view_config(route_name='deliveryLink', renderer='templates/deliveryLink.jinja2')
def deliveryLink(request):
print("YAY for gift delivery via Link")
if 'submit_deliverylink' in request.POST:
print("request.POST: ", request.POST)
myform = request.POST
for m in myform:
print("key: ", m, " value: ", myform[m])
session = request.session
session['postal'] = ?
session['address'] = ?
session['unit'] = ?
data = "??"
data_array = data.split(",")
session['data'] = data_array
session['delivery'] = str(data_array)
print (session['delivery'])
return HTTPFound(location='http://localhost:5555/confirmation')
return {}
@view_config(route_name='confirmation', renderer='templates/confirmation.jinja2')
def confirmation(request):
print("YAY for confirmation")
for a in request.POST:
request.session[a] = request.POST[a]
return {}
나는 데이터가이 확인 페이지에 표시 할 이전에 입력합니다 : Confirmation.jinja2
<form class="form-horizontal" method="POST">
<div class="form-group">
<label class="control-label col-md-2" for="postal">Postal Code:</label>
<input type="text" class="form-control" id="postal" name="postal" />
</div>
<div class="form-group">
<label class="control-label col-md-2" for="address">Detailed Address:</label>
<textarea class="form-control" rows="3" id="address" name="address"></textarea>
</div>
<div class="form-group">
<label class="control-label col-md-2" for="unit">Unit No #:</label>
<input type="text" class="form-control" id="unit" name="unit" />
</div>
</form>
안녕, 답장을 보내 주셔서 감사에서 호출 할 수 있습니다! 이 선은 어떻게 작동해야합니까? 'session [ 'postal'] =?'폼의 데이터를 얻기 위해서? –
내 대답을 편집하고 의견을 작성하고 코드에 약간 추가했습니다. 나는 Python Pyramid와 함께 작업하지 않았고, 변수'data'에 대해 무엇이 있어야하는지 확신하지 못했습니다. – SAZ