Django学习笔记-模板

简介: 简单点来说,网站无外乎就是从前端得到数据,数据在后端处理,将数据返回给前端。这里就不说如何获取前端数据了。一、数据返回给前端之前的demo中有一种:return HttpResponse(u"接收这个请求后,返回的数据")但是这种基本是用不到了,正常的做法是URL中的name属性和VIEW中render。

简单点来说,网站无外乎就是从前端得到数据,数据在后端处理,将数据返回给前端。

这里就不说如何获取前端数据了。

一、数据返回给前端

之前的demo中有一种:

return HttpResponse(u"接收这个请求后,返回的数据")

但是这种基本是用不到了,正常的做法是URL中的name属性和VIEW中render。当然也可能使用JSON等等来实现数据传输。

直接看demo吧,新建的应用叫my_tem,所以网页为my_tem/home.html

views.py

def home(request):
    m_str = u"前台正在接收这个string"
    m_list = ['HTML', 'CSS', 'jQuery', 'Python', 'Django']
    m_dict = {'name': 'zhaoguangyao', 'sex': '男'}
    m_range = [i for i in range(100)]

    return render(request, 'my_tem/home.html', {'m_str': m_str,
                                                'm_list': m_list,
                                                'm_dict': m_dict,
                                                'm_range': m_range})

urls.py

urlpatterns = [
    url(r'^$', xx.home, name='home'),
    url(r'^admin/', admin.site.urls),
]

home.html

<!DOCTYPE html>
<html>
<head>
    <title>zhaoguangyao</title>
</head>
<body>


templates<br>
{{m_str}}<br>
<br>


这是一个list,将要用for循环遍历:<br>
{% for i in m_list %}
{{ i }}<br>
{% endfor %}


<br>
这是一个字典,将要输出字典里的内容:<br>
名字:{{ m_dict.name }}<br>
性别:{{ m_dict.sex }}<br>

<br>
也可以遍历字典:<br>
{% for key, value in m_dict.items %}
{{ key }} : {{ value }}<br>
{% endfor %}


<br>
便利一下1-100,但是这样最后也有逗号:<br>
{% for i in m_range %}
{{ i }},
{% endfor %}<br>
<br>
遍历里面加入判断:<br>
{% for i in m_range %}
{{ i }}{% if forloop.last %}<br>{% else %},{% endif %}
{% endfor %}


<br>
<span style="color: red;">这个就重要了,模板上得到对应的视图</span><br>
{% url 'add' 4 5 %}<br>

<br>
<span style="color: red;">还可以用as语句讲内容区别名,就相当于一个变量,然后就能使用了</span>
{% url 'add' 4 5 as m_url%}
<br>
<a href="{{ m_url }}">连接到:{{ m_url }}</a><br>

<br>
{{ request.user }}
<br>
{% if request.user.is_authenticated %}
    {{ request.user.username }},您好!
{% else %}
    请登录,这里放登陆链接
{% endif %}<br>

{{ request.path }}<br>

{{ request.GET.urlencode }}<br>

{{ request.path }}?{{ request.GET.urlencode }}<br>

<a href="{{ request.path }}?{{ request.GET.urlencode }}&delete=1">
    当前网址加参数 delete
</a>


</body>
</html>

项目做完了,但是好多东西都没有整理出来。比如django与json,ajax等等。

相关文章
|
3月前
|
SQL 前端开发 JavaScript
Python 教程之 Django(10)模板
Python 教程之 Django(10)模板
34 0
|
5月前
|
索引 Python
19 Django模板 - 定义模板
19 Django模板 - 定义模板
17 0
|
5月前
|
Python
18 Django模板 - 介绍
18 Django模板 - 介绍
26 0
|
7月前
|
Python
Django模板加载与响应2
Django模板加载与响应2
39 0
|
7天前
|
Python
基于Django的Python应用—学习笔记—功能完善
基于Django的Python应用—学习笔记—功能完善
|
9天前
|
开发者 Python
Django模板系统的强大之处:动态渲染与扩展性
【4月更文挑战第15天】Django模板系统是Web开发中的强大工具,支持动态渲染和扩展性。动态渲染包括变量、标签和过滤器的使用,实现内容根据上下文数据动态生成。模板继承和自定义标签则提升了扩展性,减少代码重复,增强可维护性。通过这些特性,Django模板系统助力开发者构建高效、动态的Web应用。
|
3月前
|
前端开发 JavaScript Python
Django 模板中使用 Ajax POST
Django 模板中使用 Ajax POST
17 0
|
4月前
|
前端开发 JavaScript 数据库
Python 教程之 Django(10)模板
Python 教程之 Django(10)模板
37 0
|
5月前
|
Ubuntu Python
23 Django模板 - 验证码案例
23 Django模板 - 验证码案例
31 0
|
5月前
|
安全 JavaScript 前端开发
22 Django模板 - csrf
22 Django模板 - csrf
26 0