Django render_to_响应显示原始文本
我是Django的新手,我正在尝试创建一个简单的html框架来验证一切是否正常工作。一切正常(服务器正在运行并加载文件),但当我输入HTML代码时,它显示为原始文本,而不是正确呈现 我的看法如下Django render_to_响应显示原始文本,django,Django,我是Django的新手,我正在尝试创建一个简单的html框架来验证一切是否正常工作。一切正常(服务器正在运行并加载文件),但当我输入HTML代码时,它显示为原始文本,而不是正确呈现 我的看法如下 def home(request): return render_to_response('index.html') <!DOCTYPE html > <html> <head> <meta charse
def home(request):
return render_to_response('index.html')
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
<title> awesome </title>
</head>
<body>
</body>
</html>
我的'index.html'如下所示
def home(request):
return render_to_response('index.html')
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
<title> awesome </title>
</head>
<body>
</body>
</html>
棒极了
我应该怎么做才能正确渲染?(仅显示“真棒”)
编辑
就这个问题而言,错误在于我将原始代码保存为html。当我选择这个选项时,它添加了代码,使html呈现它看起来像一个原始输入
故事的寓意:确保您在文本编辑器中进行编辑并手动更改扩展名您需要做的第一件事是创建一个“基本”模板,以便其他模板可以从中扩展。您通常会将其命名为
base.html
,但也可以使用您想要的名称。您还需要创建扩展模板可以使用的块
:
base.html
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
< title > awesome < /title >
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
{% extends "base.html" %}
{% block content %}
{% endblock %}
{% extends "base.html"%}
{% block content %}
<p>My name is {{ name }}</p>
<p>I'm {{ age }} years old</p>
{% endblock %}
此时,index.html
将与base.html
完全相同,因为在content
块中没有显示任何内容。使用以下数据更新视图:
视图.py
def home(request):
data = {'name': 'YourName', 'age': 25}
return render_to_response('index.html', data)
现在,再次更新您的index.html
:
index.html
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
< title > awesome < /title >
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
{% extends "base.html" %}
{% block content %}
{% endblock %}
{% extends "base.html"%}
{% block content %}
<p>My name is {{ name }}</p>
<p>I'm {{ age }} years old</p>
{% endblock %}
{%extends“base.html”%}
{%block content%}
我的名字是{{name}
我今年{{岁}
{%endblock%}
不要忘了阅读罚款。您需要做的第一件事是创建一个“基本”模板,以便其他模板可以从中扩展。您通常会将其命名为
base.html
,但也可以使用您想要的名称。您还需要创建扩展模板可以使用的块
:
base.html
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
< title > awesome < /title >
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
{% extends "base.html" %}
{% block content %}
{% endblock %}
{% extends "base.html"%}
{% block content %}
<p>My name is {{ name }}</p>
<p>I'm {{ age }} years old</p>
{% endblock %}
此时,index.html
将与base.html
完全相同,因为在content
块中没有显示任何内容。使用以下数据更新视图:
视图.py
def home(request):
data = {'name': 'YourName', 'age': 25}
return render_to_response('index.html', data)
现在,再次更新您的index.html
:
index.html
<!DOCTYPE html >
<html>
<head>
<meta charset="UTF-8">
< title > awesome < /title >
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
{% extends "base.html" %}
{% block content %}
{% endblock %}
{% extends "base.html"%}
{% block content %}
<p>My name is {{ name }}</p>
<p>I'm {{ age }} years old</p>
{% endblock %}
{%extends“base.html”%}
{%block content%}
我的名字是{{name}
我今年{{岁}
{%endblock%}
别忘了读罚款单。有几个问题
1:你的标签里面的空格是怎么回事
无效。它必须是Foo
,这就是为什么您会看到“html”
2:即使标题标记写得正确,标题标记也不会呈现,因此您将得到一个空白页。如果您想显示“awesome”-您需要将其写在body标记中
<body>awesome</body>
太棒了
有几个问题
1:你的标签里面的空格是怎么回事
无效。它必须是Foo
,这就是为什么您会看到“html”
2:即使标题标记写得正确,标题标记也不会呈现,因此您将得到一个空白页。如果您想显示“awesome”-您需要将其写在body标记中
<body>awesome</body>
太棒了
1)删除 (r'^home/$', 'django.views.generic.simple.direct_to_template',
{'template': 'index.html'}),
1) 删除 (r'^home/$', 'django.views.generic.simple.direct_to_template',
{'template': 'index.html'}),