django学习笔记-1
1、背景说明
django版本:1.8.2
python版本:3.6.5
pip版本:pip 18.0
以紫红色标注的为python文件中的示例代码。
2、安装django
pip install django
3、创建项目
创建项目命令:
django-admin startproject 项目名称 创建完成项目目录如下:
E:\DJANGO_PROJECTS\TEST1 #该处test1为项目的名称
├─.idea
│ └─inspectionProfiles
└─test1 #此目录为应用目录,也可以理解为一个模块
└─__pycache__
创建完成项目之后,各文件或目录解释,此处父级目录为:E:\DJANGO_PROJECTS\test1。
db.sqlite3:默认的数据库存储引擎,采用sqlite3作为默认的数据库存储引擎。
manage.py:项目的管理配置文件
test1/:项目中应用目录
test1应用目录下文件说明:
__init__.py:包含该文件,说明test1是一个模块。
settings.py:项目的配置文件,包含数据库配置、项目下应用的注册配置、项目的根url等配置。
urls.py:项目的访问url配置,如下所示代码:
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^booktest/',include('booktest.urls'),
]
wsgi.py:项目部署服务器上运行,wsgi配置文件。
4、创建应用
此处操作目录为:E:\DJANGO_PROJECTS\test1。 创建应用:
python manage.py startapp 应用名称 一个项目中可以创建多个应用。
备注:需要在我们的项目目录下进行创建。同时一个项目中可以创建多个应用。 自定义应用目录说明,假设此处自定义创建的应用为bookinfo,则此处目录为:E:\DJANGO_PROJECTS\test1\bookinfo。
migrations:中文迁移。可以根据当前项目中的模型类去生成数据库脚本,并将脚本映射到数据库中。
modles.py:自定义应用的模型类文件,在此文件定义类,即数据库中表以及字段的配置,以及表之间的关联关系。
tests.py:django自带的测试文件
views.py:定义应用的视图文件,在该文件中主要定义视图的类,即定义返回前端展示的数据、引用的模板文件等等。 定义完模型类之后,需要做一次迁移操作,即生成迁移。生成迁移的文件即是将来转化为sql语句在数据中执行。 生成迁移如下:
python manage.py makemigrations
生成迁移之后,会在定义了模型的应用的migrations目录生成一个0001_initial.py文件。该文件内容将来可以转化为sql语句执行。 执行迁移:即根据生成的迁移的文件,去数据库中执行对应的sql语句来创建表。
python manage.py migrate 如果重新定义了应用的模型类,在未修改数据库表结构的情况下,不需要进行迁移操作,但是需要重新进入manage shell方可进行相关信息输出。 在生成迁移之前,需要先做一次注册动作,注册需要修改的文件为settings.py,所属目录为E:\django_projects\test1\test1\settings.py。
所有在项目中引用的应用,都需要先进行注册操作,不进行注册,是无法在项目中进行调用的。 注册操作示例配置如下:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'bookinfo',#即为自定义的应用名称
)
5、启动应用已经访问应用
python manage.py runserver ip地址:端口
默认监听的端口为8000。
默认监听的ip地址为:127.0.0.1
备注:需要在我们的项目目录下,此处示例目录为:/e/django_projects/test1 访问如下:
url地址:127.0.0.1:8000
此处访问404是由于我在E:\django_projects\test1\test1\urls.py中配置了url,没有配置"/"url规则导致,但是已经可以看出,django已经运行起来了。
django学习笔记-1的更多相关文章
- Django 学习笔记之四 QuerySet常用方法
QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...
- Django 学习笔记之三 数据库输入数据
假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表.具体的参照Django 学习笔记之二的相关命令. 那么这篇主要介 ...
- Django学习笔记(五)—— 表单
疯狂的暑假学习之 Django学习笔记(五)-- 表单 參考:<The Django Book> 第7章 1. HttpRequest对象的信息 request.path ...
- Django学习笔记(三)—— 型号 model
疯狂暑期学习 Django学习笔记(三)-- 型号 model 參考:<The Django Book> 第5章 1.setting.py 配置 DATABASES = { 'defaul ...
- Django 学习笔记(二)
Django 第一个 Hello World 项目 经过上一篇的安装,我们已经拥有了Django 框架 1.选择项目默认存放的地址 默认地址是C:\Users\Lee,也就是进入cmd控制台的地址,创 ...
- Django 学习笔记(五)模板标签
关于Django模板标签官方网址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF标签 Hello World/vi ...
- Django 学习笔记(四)模板变量
关于Django模板变量官方网址:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.传入普通变量 在hello/Hell ...
- Django 学习笔记(三)模板导入
本章内容是将一个html网页放进模板中,并运行服务器将其展现出来. 平台:windows平台下Liunx子系统 目前的目录: hello ├── manage.py ├── hello │ ├── _ ...
- Django 学习笔记(七)数据库基本操作(增查改删)
一.前期准备工作,创建数据库以及数据表,详情点击<Django 学习笔记(六)MySQL配置> 1.创建一个项目 2.创建一个应用 3.更改settings.py 4.更改models.p ...
- Django 学习笔记(六)MySQL配置
环境:Ubuntu16.4 工具:Python3.5 一.安装MySQL数据库 终端命令: sudo apt-get install mysql-server sudo apt-get install ...
随机推荐
- 【转】php容易犯错的10个地方
原文地址: http://www.toptal.com/php/10-most-common-mistakes-php-programmers-make 译文地址:http://codecloud.n ...
- Git与TortoiseGit基本操作
Git与TortoiseGit基本操作 1. GitHub操作 本节先简单介绍 git 的使用与操作, 然后再介绍 TortoiseGit 的使用与操作. 先看看SVN的操作吧, 最常见的是 检出(C ...
- 20155331《网络对抗》Exp7 网络欺诈防范
20155331<网络对抗>Exp7 网络欺诈防范 实验内容 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有: 简单应用SET工具建立冒名网站 et ...
- 20155331 Exp3 免杀原理与实践
20155331 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.基于特征码的检测,2.启发式恶意软件检测,3.基于行为的恶意软件检测. 免杀是做什么? 让病毒不被杀毒软件杀 ...
- tkinter 对键盘和鼠标事件的处理
鼠标事件 <ButtonPress-n> <Button-n> <n> 鼠标按钮n被按下,n为1左键,2中键,3右键 <ButtonRelease-n> ...
- 一些IT中的工具介绍
1. 史上最全github使用方法:github入门到精通 2. Git教程 3. GIT与GitHub使用简介 简单来说,git是一种版本控制系统.跟svn.cvs是同级的概念.github是一个网 ...
- Kubernetes学习之路(二十五)之Helm程序包管理器
目录 1.Helm的概念和架构 2.部署Helm (1)下载helm (2)部署Tiller 3.helm的使用 4.chart 目录结构 5.chart模板 6.定制安装MySQL chart (1 ...
- [Luogu5048] [Ynoi2019模拟赛]Yuno loves sqrt technology III[分块]
题意 长为 \(n\) 的序列,询问区间众数,强制在线. \(n\leq 5\times 10^5\). 分析 考虑分块,暴力统计出整块到整块之间的众数次数. 然后答案还可能出现在两边的两个独立的块中 ...
- JavaScript快速入门-ECMAScript对象介绍
一.概念介绍 在 ECMAScript 中,所有对象并非同等创建的.一般来说,可以创建并使用的对象有三种:本地对象.内置对象和宿主对象. 要理解这三种对象,先要理解宿主环境. 1.宿主环境 一般宿主环 ...
- resource fork, Finder information, or similar detritus not allowed
1.关闭当前项目和Xcode 2.打开终端或者iterm cd ~/Library/Developer/Xcode/DerivedData/ 3. xattr -rc . 4.重新打开项目 5.如果不 ...