问题描述
我可以在HTML页面上显示jija2模板,但是输出格式不正确。
current output is: Your first name is Tom Your last name is Hanks
Expected output is: Your first name is Tom Your last name is Hanks
Views.py
from django.shortcuts import render
from django import forms
from jinja2 import Environment,FileSystemloader
class dbnames(forms.Form):
first_name = forms.CharField(label="First Name")
last_name = forms.CharField(label="Last Name")
def index(request):
return render(request,"emps/index.html")
def form_gen(request):
form = dbnames()
if request.method == "POST":
form = dbnames(request.POST)
if form.is_valid():
file_loader = FileSystemloader('emps/templates/emps')
env = Environment(loader=file_loader)
template = env.get_template('result.j2')
output = template.render(form.cleaned_data)
return render(request,"emps/output.html",{
"form_data": output
})
else:
print('ERROR')
return render(request,"emps/users.html",{
"form": form
})
result.j2
Your first name is {{first_name}}
Your last name is {{last_name}}
解决方法
这与jinja2无关,或者django在html中,您可以使用
之类的标签,或者,如果此方法不起作用,则可以使用如下ul: >
<ul>
<li>Your first name is {{first_name}}</li>
<li>Your last name is {{last_name}}</li>
</ul>