Django学习第一天学习笔记-环境搭建、模版变量

先用pip install django安装好django开发环境

然后在D盘新建一个"django web"目录

然后进入打开cmd,进入建好的目录里

新建一个django工程,命令如下

D:\django web>django-admin startproject website


然后修改一下settings.py的配置,以下为要修改的几个地方

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/shanghai'


INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
'blog'   #这里填上我们要创建的app的名字
]


接下来在urls.py里添加一项

urlpatterns = [
    url(r'^admin/', admin.site.urls),
url(r'^blog/index/$',views.index),  //访问blog/index的请求,都转给views.index这个方法处理
]


下面要新建一个名字为blog的app

D:\django web>django-admin startapp blog, 目录结构如下




然后在blog/views里新建测试代码

from django.shortcuts import render
from django.template import loader,Context
from django.http import HttpResponse

class Person(object):
	def __init__(self,name,age,sex):
		self.name = name
		self.age = age 
		self.sex = sex
	def say(self):
		return "my name is " + self.name


# Create your views here.
def index(request):
	t = loader.get_template('blog/index.html')   #用loader这个类来加载模版
	user = {"name":"tom", "age":23,"sex":"male"}

	person = Person("jack",30,"female")

	book_list = ["python","ruby","java","c"]

	c = Context({'title':'Django', "user": person,"book_list":book_list})
	return HttpResponse(t.render(c))    #调用t.render()方法渲染模版

在blog下新建一个templates目录,然后再新建一个blog目录,在这个目录下新建一个名为index.html的模版文件

<!DOCTYPE html>
<html>
<head>
	<title>{{title}}</title>
</head>
<body>
	<h1>hello,{{user.name}}!</h1>
	<li>{{user.age}}</li>
	<li>{{user.sex}}</li>
	<li>{{user.say}}</li>
	<li>{{book_list.0}}</li>
	<li>{{book_list.1}}</li>
	<li>{{book_list.2}}</li>
	<li>{{book_list.3}}</li>
</body>
</html>

然后通过以下命令启动一个django的测试服务器(这个服务器只是用来测试用的不能用于生产环境)

D:\django web>manage.py runserver 0.0.0.0 8000


在浏览器里运行效果如下:



总结一下知识点:

在模版文件里,变量用{{变量名}},并支持各种复杂的数据结构

调用对象的属性和方法,可以直接用 {{变量名.属性}}   {{变量名.方法名}}

访问一个列表元素,直接用列表的索引就可以访问了

 {{变量名.0}}   #第一个列表元素

 {{变量名.1}}    #第二个列表元素

Django中用 django.template.Context这个对象和模版中的变量关联

book_list = ["python","ruby","java","c"]
c = Context({'title':'Django', "user": person,"book_list":book_list})
return HttpResponse(t.render(c))






已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页