Django基础学习一
Django需要安装Django和jinja2,所以在开始学习之前,要先按照Django模块和jinja2模块,Django默认的数据库是SQLite,所以建议大家在学习之前需要先安装SQLite
一、前期的环境准备
1、使用pip安装的方式安装Django和jinja2
2、安装SQLite,安装方法如下
a、下载sqlite-tools-win32-x86-3210000和sqlite-dll-win32-x86-3210000,然后解压
b、在C盘根目录下创建文件夹sqlite,将解压出来的文件复制到该目录中sqldiff.exe、sqlite3.def、sqlite3.dll、sqlite3.exe、sqlite3_analyzer.exe
c、为sqlite设置环境变量C:\sqlite
d、在windows的cmd命令中输入sqlite3,如果有下面的输出,则认为sqlite的安装成功,设置环境变量成功

至此,Django学习的环境准备工作完成
二、如何创建一个Django的程序,一个Django程序由“工程”和“app”组成
1、创建一个工程
进入要创建Django工程目录中,执行如下的命令

这个时候我们进入到F盘,就可以看到我们创建的工程的目录

2、创建一个app,其实django的主要功能是在app中实现的,所以必须要创建一个app

支持学习Django要用到的东西我们都已经创建完成,一个project支持创建多个app
三、开始正式进入学习Django
1、首先来学习一下Django中的文件
工程中的文件
settings.py:记录所有的配置信息
urls.py:用来匹配所有的url,然后把不同的url转发给对应的函数
wsgi.py: 路由选择器
APP中的文件
models.py:操作数据库的代码都在这里,比如一个表的类的等
views.py:这里写所有的函数,比如一个url过来,我们需要给这个url什么返回值之类的
test.py:主要用来写单元测试
templates:主要是放置html文件,这个目录是默认不存在的,需要我们手动创建
2、在来看下Django的处理用户的流程
a、一个用户请求过来,现在url中匹配
b、匹配成功后,在views中找到对应的函数
c、然后去数据库中查找数据
d、把数据库中查找的数据返回给url
3、数据库相关的命令
首先,默认Django使用的是SQLite数据库,我们在工程的settings中可以看到数据库的引擎是SQLite

然后在models中生成表的类

最后在setting表明是为哪个app创建数据库表

至此,我们就可以执行命令创建数据库了
python manager.py makemigrations 生成配置文件
python manager.py migrate 根据配置文件生成表
至此就可以看到有两个文件生成,一份是配置文件,一份是SQLite配置文件

第一节到此结束
Django基础学习一的更多相关文章
- Django基础学习二
今天继续学习django的基础 学习用户提交url如何获得返回值 1.首先需要在工程的urls文件定义指定的urls要路由给哪个函数 在这个例子中,我们定义home的urls路由给views里的tes ...
- Django基础学习七之如何配置django+mysql
很久没有更新博客了,也有段时间没有持续性的学习了,感觉堕落了,今天继续开始学习吧 今天主要来学习一下在django下配置mysql的数据库和使用admin用户管理数据库 1.在project中的set ...
- Django基础学习六之渲染
今天简单的介绍一下Django的template的渲染和Django的template的基本的语法 首先我们先启动一个django的shell,首先需要进入django的工程目录下启动django的s ...
- Django基础学习五_引入静态文件
今天继续学习Django,今天主要掌握两个小点 一.如果为Django项目中引入静态文件 1.先要在project目录下创建static的目录,然后将jquery文件拷贝这个目录下就可以了 2.在pr ...
- Django基础学习四_数据库的增删改查
今天主要学习两个东西 1.如何对数据库做增删改查 2.如果将数据库中的数据用html的方式返回到前台 一.对数据库中增删改查操作 1.首先需要先见表,见表的方法我们在“http://www.cnblo ...
- Django基础学习三_路由系统
今天主要来学习一下Django的路由系统,视频中只学了一些皮毛,但是也做下总结,主要分为静态路由.动态路由.二级路由 一.先来看下静态路由 1.需要在project中的urls文件中做配置,然后将匹配 ...
- DJANGO基础学习之转义总结:escape,autoescape,safe,mark_safe
何谓转义?就是把html语言的关键字过滤掉.例如,<div>就是html的关键字,如果要在html页面上呈现<div>,其源代码就必须是<div> PS:转义其实就 ...
- Django基础学习笔记
Django开发流程 创建一个django项目:命令:django-admin startproject 项目名 进入到项目并创建一个应用:命令:python manage.py startapp 应 ...
- Django基础学习之Cookie 和 Sessions 应用
在Django里面,使用Cookie和Session看起来好像是一样的,使用的方式都是request.COOKIES[XXX]和request.session[XXX],其中XXX是您想要取得的东西的 ...
随机推荐
- DIY远程控制开关(tiny6410+LED+yeelink+curl)
上一次,介绍了如何实现远程监控室内温度,大家伙反响还是很热烈的,笔者很欣慰,独乐乐不如众乐乐啊.不过话说回来,那个实现只能是远程监测家中温度,假如发现家里热得很,想远程打开空调开关提前降降温,回家后不 ...
- notification的创建及应用
之前我用了button.setonclicklistener来获取一个点击事件,但是在new notificationcompat.builder是会报一个没有定义的错误.这种点击事件的方式就不会报那 ...
- C# 图片生成缩略图
C# 图片生成缩略图方法: /// <summary> /// 生成缩略图 /// </summary> /// <param name="fileName&q ...
- 关于const 和指针
这个很久之前就很困扰的问题,现在再理一下: 1,指向const对象的指针 >C++强制要求指向const对象的指针也必须具有const特性!!!也就是不能把一个const对象的地址赋给一个非co ...
- VUE的使用方法
vueInit: function() { var _this = this; this.vue = new Vue({ el: '#pa', data: { //存放初始化数据 sourceData ...
- 使用ajax提交form表单,包括ajax文件上传 转http://www.cnblogs.com/zhuxiaojie/p/4783939.html
使用ajax提交form表单,包括ajax文件上传 前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },&qu ...
- BinaryFormatter、SoapFormatter、XML3种序列化
序列化和反序列化我们可能经常会听到,其实通俗一点的解释,序列化就是把一个对象保存到一个文件或数据库字段中去,反序列化就是在适当的时候把这个文件再转化成原来的对象使用.我想最主要的作用有:1.在进程下次 ...
- 首页大屏广告效果 jquery轮播图淡入淡出
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- xmlns和xsi之schemaLocation
appplicationContex.xml文件报错:元素 "util:constant" 的前缀 "util" 未绑定 在根节点添加了“xmlns:util= ...
- Java反射机制的适用场景及其利与弊 ***
一.反射的适用场景是什么? 1).Java的反射机制在做基础框架的时候非常有用,有一句话这么说来着:反射机制是很多Java框架的基石.而一般应用层面很少用,不过这种东西,现在很多开源框架基本都已经给你 ...