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是您想要取得的东西的 ...
随机推荐
- 用yum安装lamp和lnmp环境
LAMP: 1.首先安装Apache和mysql: yum install -y httpd mysql mysql-server mysql-devel 2.启动httpd和mysqld: serv ...
- 解决 The word is not correctly spelled问题
The word is not correctly spelled 此问题是eclipse校验单词拼写造成,如果出在配置文件中,一般会影响到程序的正常执行 解决方法:Window--Preferenc ...
- UT源码+105032014070
设计三角形问题的程序 输入三个整数a.b.c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形.等腰三角形.一般三角形(特殊的还有直角三角形),以及不构成三角形.(等腰直角 ...
- 6-3 Add Two Polynomials(20 分)
Write a function to add two polynomials. Do not destroy the input. Use a linked list implementation ...
- Nginx获取自定义头部header的值
http://blog.csdn.net/xbynet/article/details/51899286?_t=t http://shift-alt-ctrl.iteye.com/blog/23314 ...
- LOJ 6485 LJJ 学二项式定理——单位根反演
题目:https://loj.ac/problem/6485 \( \sum\limits_{k=0}^{3}\sum\limits_{i=0}^{n}C_{n}^{i}s^{i}a_{k}[4|(i ...
- bzoj 4372 烁烁的游戏——动态点分治+树状数组
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4372 和 bzoj 3070 震波 是一个套路.注意区间修改的话,树状数组不能表示 dis ...
- Mybatis 插件实现动态设置参数
原文地址:Mybatis 插件实现动态设置参数 博客地址:http://www.extlight.com 一.背景 笔者在搭建架构时,通常会利用泛型对 dao 层 和 service 层公共的代码(增 ...
- Oracle.DataAccess.dll 部署安装
Oracle.DataAccess.dll 要拷贝到项目发布目录 项目发布的时候,还必须要拷贝以下几个文件在运行目录1.oci.dll 2.oraociicus11.dll 3.OraOps11w.d ...
- Android Studio failed to create error code -6解决方法
起因是AndroidStudio编译太慢,在stackoverflow上找解决方法,创建了个vm选项文件,导致内存不够用 很多中文博客上都千篇一律地说是内存不够,打开安装路径下bin目录下的studi ...