如何将数据从视图获取到模板?
how to get the data from view to templates?
我正在尝试将数据从我的 views.py 获取到 html 页面。
如果 views.py 代码是这样
def VerifiedBySuperuser(request):
if request.method == 'POST':
vbs = MaanyaIT_EXAM48_ManageQuestionBank()
vbs.QuestionID = MaanyaIT_EXAM48_ManageQuestionBank.objects.get(QuestionID=request.POST.get(QuestionID, None))
vbs.QuestionInEnglishLang = request.POST.get('QuestionInEnglishLang', None)
vbs.save()
else:
return render(request, 'exam48app/verifiedbysuperuser.html')
那么 html 页面的代码应该如何查看模板中的所有数据..
这是我的 html 页面
<form class="from-horizontal" method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="post-entry">
{{ MaanyaIT_EXAM48_ManageQuestionBank.QuestionInEnglishLang }}
</div>
</form>
现在我该怎么办?
根据您的评论,您需要了解如何将视图中的数据 write/render 转换为 html 模板
我给大家演示一个简单的例子,
假设您有如下视图,
def VerifiedBySuperuser(request):
if request.method == 'GET':
context = {
"T_Name": "My Name",
"T_Age": 50,
"T_Phone": 1478523699
}
return render(request, 'verifiedbysuperuser.html', context=context)
和一个 HTML 模板如下,
<!DOCTYPE>
<html>
<body>
Name : {{ T_Name }}<br>
Age : {{ T_Age }}<br>
Phone : {{ T_Phone }}<br>
</body>
</html>
当您访问您的视图时,您将得到这样的响应,
在您的情况下,您可以将尽可能多的属性传递给模板 dict
(在我的示例中显示)和 template/html keys of context
(即 T_Name
,T_Name
etct) 变为变量。所以你可以直接在双大括号({{ variable_name }}
)内的 HTML 中使用它们
据我所知,这是 template rendering/ html rendering
的一般程序
UPDATE-1
def VerifiedBySuperuser(request):
if request.method == 'POST':
obj = MyModel.objects.get(id=some_id)
other_data = [1,2,3,4,] # some specific data
context = {
"post_data": request.data,
"object_instance": obj,
"some_other_data": other_data
}
return render(request, 'verifiedbysuperuser.html', context=context)
我正在尝试将数据从我的 views.py 获取到 html 页面。 如果 views.py 代码是这样
def VerifiedBySuperuser(request):
if request.method == 'POST':
vbs = MaanyaIT_EXAM48_ManageQuestionBank()
vbs.QuestionID = MaanyaIT_EXAM48_ManageQuestionBank.objects.get(QuestionID=request.POST.get(QuestionID, None))
vbs.QuestionInEnglishLang = request.POST.get('QuestionInEnglishLang', None)
vbs.save()
else:
return render(request, 'exam48app/verifiedbysuperuser.html')
那么 html 页面的代码应该如何查看模板中的所有数据..
这是我的 html 页面
<form class="from-horizontal" method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="post-entry">
{{ MaanyaIT_EXAM48_ManageQuestionBank.QuestionInEnglishLang }}
</div>
</form>
现在我该怎么办?
根据您的评论,您需要了解如何将视图中的数据 write/render 转换为 html 模板
我给大家演示一个简单的例子,
假设您有如下视图,
def VerifiedBySuperuser(request):
if request.method == 'GET':
context = {
"T_Name": "My Name",
"T_Age": 50,
"T_Phone": 1478523699
}
return render(request, 'verifiedbysuperuser.html', context=context)
和一个 HTML 模板如下,
<!DOCTYPE>
<html>
<body>
Name : {{ T_Name }}<br>
Age : {{ T_Age }}<br>
Phone : {{ T_Phone }}<br>
</body>
</html>
当您访问您的视图时,您将得到这样的响应,
在您的情况下,您可以将尽可能多的属性传递给模板 dict
(在我的示例中显示)和 template/html keys of context
(即 T_Name
,T_Name
etct) 变为变量。所以你可以直接在双大括号({{ variable_name }}
)内的 HTML 中使用它们
据我所知,这是 template rendering/ html rendering
的一般程序
UPDATE-1
def VerifiedBySuperuser(request):
if request.method == 'POST':
obj = MyModel.objects.get(id=some_id)
other_data = [1,2,3,4,] # some specific data
context = {
"post_data": request.data,
"object_instance": obj,
"some_other_data": other_data
}
return render(request, 'verifiedbysuperuser.html', context=context)