一、django框架的创建
1)第一种方法:cmd命令行里面进行创建
a、创建一个文件夹
b、打开文件夹,按照shift键,鼠标右键,点从此处打开命令行窗口
![b1b7df1117adf8eb0f60e4011956586c.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-68a310bea23c95d496098b4b0494b6fb.png)
运行django: python mannage.py runserver
2)第二种方法:pycharm里面进行创建
![102a422f70cd898d3a17992e58f4abcd.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d3163ee8eed04696f0d4f986344aa74c.png)
![1d9d36116788bb5046d5648502061031.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-4193e3b4760016d70fd7bb508d33b3fb.png)
3、运行django框架
1、点击三角符号,运行
![9e483b1751ffe9b3bbc94070bb3e6952.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-fd2b8d7669182589efb36b8515db3d05.png)
2、生成对话框
![97540a194df719fed2b5f1de5c2440ce.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-973da3301d8f1817c407ae9bd42e83fd.png)
3、点击网址,
![8cd2a80de33c80eceb68958acbe9864e.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-1edd0721fdb5100002d34757906747b7.png)
![83fe0908fd0c4c262d615ed6e3a0da9b.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-8261c9781b4ab50e79eca5d8f0fba47b.png)
二、分析各个文件夹的意义
1)
![d0197ae2ac4fc854e5ee5ff9e40e4889.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-22651b6366b15df55a10aa3544a8ba97.png)
noevl app/应用
novel 项目
manage.py 管理文件
templates 存放模板文件的文件夹
2)具体分析各个文件的意义
Projects
novel :APP 文件名
static
css
js
img
__init__.py :声明当前文件夹可以是一个模块
admin.py :数据库如果希望被后台看到,需要在这个文件下进行注册
apps.py
models.py :映射了数据库所创建的表
tests.py :实现某些测试驱动
viems.py :index函数返回index.html,但要templates里面去找index.html文件
templates
index.html
login.html
webapp
__init__.py
settings.py :定义了静态文件存放的路径,STATIC_URL = '/static/'。定义了数据库的类型,也就是连接所在的的数据库
urls.py :定义路由:urls(r'^$',viems.index)。==》去viems.py找到index函数
wsgi.py
三、创建应用的前的准备工作
1)修改成中文界面
LANGUAGE_CODE= 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'
![712df88289a5660e0e67e49e2d3102a8.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-5ba59af3b536b311bf935aa21ef11a0f.png)
![f0816f8ac1f5879748dc40a37c626294.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-3181caed3be6945cae7150e8b55b06be.png)
2)debug模式
![f4f5bd5c50fb3f742b3a3aa66bb0390d.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-ebffb1ef1f881149fc4aee4effc64191.png)
debug : 调试模式,开发者模式。再发布前一定要关闭
四、写入第一个程序,hello world
1)创建路由
![7fff287299cab8ae47f0af76af572f84.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-7e24da5c2a4071dfcd075110d17ceba2.png)
2)创建视图
![fbbb5439181426f7b03d735f112076e5.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-3100754947d87830a69a9e64d57c9885.png)
3)注意 路由 和视图 直接的关系
![0ec9f9218de4ed29cda63f526bf9cd8c.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-a24e0f924c2ef536046f29daeb9c832b.png)
打开网页
![d6fdc7742255cec585919e73152cc839.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-522b3cb13d8e969aa45b3abed31242ae.png)
五、前端文件与django的结和
前端程序:html,css,js,jquery
后端程序:python,数据库
1)html文件放入templates里面
2)视图引入 index.html文件
![eba32f167226d6285926a239e944ee5d.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-0a450e2e86c379a652cbb50e95706856.png)
3)运行django程序
![570beda0abd59b73323956cc70f9985e.png]()
e)打开后台网页展示了刚刚创建的数据
![4a142712c92a9407699afe75e463c3df.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-ded3f200c701d5d472d593c95d43d406.png)
2、models.py对已经存在数据库的情况下,通过命令把数据库映射成模型文件
![be5ac44e8b566c5c087c102344a87556.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-38628ece35d8fbc67967e7c70192e77f.png)
python manage.py inspectdb > novel/models.py 生成了models.py文件
3)视频里面导入模型
![0cf960e4eb46011ab448a3b1a296306a.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-68b3467f5a58b818a824b8dcc236a043.png)
测试是否获取到了数据print(NovelCopy.objects.get(id=1).novelname)
#!/usr/bin/env python #-*-coding: utf8-*- from django.shortcuts import render from django.http import HttpResponse from novel.models import NovelCopy # Create your views here. def index(request): print(NovelCopy.objects.get(id=1).novelname) # NovelCopy 数据库中的表 # objects 类的一个方法,相当于进去查看表的内容的 # get(id=1)) 找到这个id # novelname 这个id下面的一个字段 return render(request,'index.html')
![48304ba5e6f9fe08f3fa1abda7d326ab.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-9fafc5631ba1215db74dcb775c5144aa.png)
七、前端随机生成数据库内容,如下
![e9844723153d091b7ea52f07b62dbed0.png](https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d4cb3c0b3384023b646482dc3eddb399.png)
1)修改dy.html文件{% for name in movies %}
{{ name.title }} {% endfor %}
2)修改viems.py视图文件,前提是数据库连接好,并且操作数据库的models.py也写好def dy(request): moviename = dymodels.objects.all[:10] # 获取数据库的表里面的所有内容随机抽取10 names = { 'movies':"moviename", } return render(request,'dy.html',context=names)