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是您想要取得的东西的 ...
随机推荐
- 【python】利用scipy进行层次聚类
参考博客: https://joernhees.de/blog/2015/08/26/scipy-hierarchical-clustering-and-dendrogram-tutorial/ 层次 ...
- (转)RESTful API 设计最佳实践
原文:http://www.oschina.net/translate/best-practices-for-a-pragmatic-restful-api 数据模型已经稳定,接下来你可能需要为web ...
- ConcurrentHashMap 分析
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/76795383 构造函数 JDK 1.5 引入了 ConcurrentHashMap . ...
- 强化学习 车杆游戏 DQN 深度强化学习 Demo
网上搜寻到的代码,亲测比较好用,分享如下. import gym import time env = gym.make('CartPole-v0') # 获得游戏环境 observation = en ...
- BZOJ4978: [Lydsy1708月赛]泛化物品(乱搞)
4978: [Lydsy1708月赛]泛化物品 Time Limit: 5 Sec Memory Limit: 256 MBSubmit: 220 Solved: 70[Submit][Statu ...
- IDEA 使用generator逆向工程生成pojo,mapper
1.新建立一个MAVEN项目 2.在pom.xml增加配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns: ...
- Nodejs中npm install 命令的问题
在使用nodejs的npm包管理工具中碰到过许多个坑,在网上查了很久才解决,现在加以总结. 两种安装方式(本地安装,全局安装) 1.全局安装(npm install -g moduleName/npm ...
- POI2012题解
POI2012题解 这次的完整的\(17\)道题哟. [BZOJ2788][Poi2012]Festival 很显然可以差分约束建图.这里问的是变量最多有多少种不同的取值. 我们知道,在同一个强连通分 ...
- 设计模式(Python)-简单工厂,工厂方法和抽象工厂模式
本系列文章是希望将软件项目中最常见的设计模式用通俗易懂的语言来讲解清楚,并通过Python来实现,每个设计模式都是围绕如下三个问题: 为什么?即为什么要使用这个设计模式,在使用这个模式之前存在什么样的 ...
- 无线密码破解----minidwep-gtk的PIN破解方法
使用虚拟机对minidwep-gtk进行PIN破解 用CDLINUX支持8187和3070_30211版.iso系统PJpin码 1.用虚拟机的好处是方便,可以一边破解,一边上网做其他事情. 虚拟机 ...