我一直想知道如何通过传递内置视图字符串来呈现模板,这样我就不需要创建html文件了。我阅读了Django Docs,但就所有有关提供模板路径字符串的信息,我也找不到有关的解释(我也尝试了几行,但一无所获)。
请以这个为例:
'action' => '',
'quantity' => '',
'item_code' => '',
'product_name' => '',
因此,如果能够做到这一点……那么,我认为它具有很大的潜力,因为它在多功能性和顺便说一句方面都有所进步。
#我是Django的新手
感谢您的关注
答案 0 :(得分:1)
您可以使用模板字符串构造一个Template
object [Django-doc],然后对其进行.render(…)
[Django-doc]:
from django.http import HttpResponse
from django.template import Template, RequestContext
def my_view(request):
arbitrary_string_as_template = """
<form action="" method="POST">
{% csrf_token %}
<label for="">Username</label>
<input type="text" name="username">
<label for="">Password</label>
<input type="password" name="password">
<button type="submit">
submit
</button>
</form>
"""
template = Template(arbitrary_string_as_template)
context = RequestContext(request)
return HttpResponse(template.render(context))
但是,如果内容是静态的,则建议使用文件。 分离关注点和编写清晰的文件(每个文件都专注于特定部分)变得更加容易。