我在Django应用程序视图中询问有关变量处理的问题.
我有2个功能:
第一个让我进入display query result一个数组GET filter parameter(在我的例子中,用户写年份和Django根据今年返回所有对象.我们将调用query_naissance此变量).
第二个让我创建一个PDF.我有很多变量,但我想再花一些时间query_naissance在我的PDF中.
这是我的第一个功能:
@login_required
def Table_annuelle_BirthCertificate(request) :
query_naissance = request.GET.get('q1')
...
return render(request, 'annuel.html', context)
Run Code Online (Sandbox Code Playgroud)
我的第二个功能看起来像:
@login_required
def Table_Naissance_PDF(request) :
data = {"BirthCertificate" : BirthCertificate}
template = get_template('Table_raw.html')
html = template.render(Context(data))
filename = str('Table annuelle Naissance.pdf')
path = '/Users/valentinjungbluth/Desktop/Django/Individus/' + filename
file = open(path, "w+b")
pisaStatus = pisa.CreatePDF(html.encode('utf-8'), dest=file, encoding='utf-8')
file.close()
context = {
"BirthCertificate":BirthCertificate,
"query_naissance":query_naissance,
}
return render(request, 'Table.html', context) # Template page générée après PDF
Run Code Online (Sandbox Code Playgroud)
那么如何query_naissance在我的第一个函数中添加用户给出的第二个函数而不再写一个字段?
然后,我必须{{ query_naissance }}在我的HTML模板中调用此变量.
谢谢
为了在请求之间保留信息,您可以使用会话.Django有非常好的会话支持:
# view1: store value
request.session['query_naissance'] = query_naissance
# view2: retrieve vlaue
query_naissance = request.session['query_naissance']
# or more robust
query_naissance = request.session.get('query_naissance', None)
Run Code Online (Sandbox Code Playgroud)
你需要'django.contrib.sessions.middleware.SessionMiddleware'在你的MIDDLEWARE_CLASSES.
| 归档时间: |
|
| 查看次数: |
690 次 |
| 最近记录: |