django基础

之前入了门,那么这篇文章我们继续学习一下django的内部逻辑
参考资料:菜鸟教程

首先创立一个HelloWorld工程,并创建出来hello world页面,这里跟“入门”那一篇不同的是,没有创建app,直接在HelloWorld里面创建view.py,目录:
这里写图片描述

#view.py
from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello World !")
#urls.py
#添加下面URL映射到urlpatterns
url(r'^hello/$', hello)

运行结果当然是:
这里写图片描述


下面开始这一篇的正文
Django 模板

模板是一个文本,用于分离文档的表现形式和内容。

在模板中定义html页面的样式,通过视图向模板中添加数据

上面在页面中输出hello world的方法,是调用了django.http.HttpResponse(),这种方式将视图和模板混合在一起,不符合django的MVC思想。

MVC:模型M,视图V,控制器C

接下来,我们学习模板,分离页面形式和数据

我们接着上面的项目将在 HelloWorld 目录底下创建 templates 目录并建立 hello.html文件,整个目录结构如下:
这里写图片描述
在templates文件夹下面建立页面:hello.html

#hello.html
<h1>{{ hello }}</h1>

变量使用双括号
接下来我们需要向Django说明模板文件的路径,修改HelloWorld/settings.py,修改 TEMPLATES 中的 DIRS 为 [BASE_DIR+”/templates”,],如下所示:
这里写图片描述
我们现在修改view.py,用于向模板提交数据:

# view.py
from django.http import HttpResponse
from django.shortcuts import render

def hello(request):
    # return HttpResponse("Hello World !")
    context = {}
    context['hello'] = 'Hello World!'
    return render(request, 'hello.html', context)

我们这里使用render来替代之前使用的HttpResponse。render还使用了一个字典context作为参数。
context 字典中元素的键值 “hello” 对应了模板中的变量 “{{ hello }}”。
运行结果:
这里写图片描述


django模板标签
模板中有django自己的一套语法,菜鸟教程里面讲过,但是我这里因为还没有实践,先略过,之后用到的时候再回头来详细学。


Django 模型
Django 对各种数据库提供了很好的支持,web常用的是MySQL,这里就以MySQL为例:

具体连接数据库的方法,见我的另一篇博客:django连接Mysql数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值