Django快速入门教程

Django

此文档基于Django3.0

简介

django是一个基于python的开源web框架,旨在简化开发者开发过程,使得开发起来快速简洁。采用了MVT软件设计模式(Model模型、View视图、Template模板)

这里MTV模型
在这里插入图片描述

Template呈现给用户,用户通过Template发送请求给View,View获取Model的数据并将数据反馈给Template,Template接着渲染给用户。很像MVC。


下面快速上手一个Django项目

python的安装和django库的安装忽略

创建项目

  1. 使用命令,进入想要放置项目的地方,输入以下命令创建名为demo项目
django-admin startproject demo
  1. 使用pycharm

这里注意创建项目或后面的应用名称不要使用python、django内建模块、关键字等

目录

创建完毕可以看到项目结构如下

	|-- demo
		|-- manage.py 
		|-- demo
			|-- __init__.py
			|-- settings.py
			|-- urls.py
			|-- wsgi.py
			|-- asgi.py #pycharm创建时无此项
		|-- templates #命令创建无此项,可自行创建
  • manage.py作用与django-admin作用一样,并且只作用于你的项目,django-admin可以进入命令行状态输入django-admin help查看用法
  • settings.py是项目配置文件,包含所有配置项
  • urls.py是项目的URL声明处,url和视图在这里进行映射,访问对应url就能得到相应视图,下面URL调度器会详细讲解
  • wsgi.py作为你的项目运行在wsgi兼容的服务器上的入口
  • templates目录存放模板,在Django中视图的概念是一类具有相同功能和模板的网页集合,如果我们使用python代码编写页面,那么就不能复用并且想要修改内容必须更改代码,所以使用模板将页面从代码中分离。简而言之就是在templates存放各个模板网页,其中数据通过后端代码传递。(MTV中的Templates)

启动项目

命令模式,进入项目目录

python manager.pu runserver

Pycharm可以直接使用UI按钮。

至此,就可以直接运行这个项目,就能在http://127.0.0.1:8000/看到Django提供的默认视图

数据库配置

Django对许多数据库都有很好的支持,如MySQL、postgresql等,其提供了同意接口。这里就先对mysql进行讲解。首先需要安装mysql,其次安装mysql的python驱动

pip install mysqlclient

然后在项目配置中修改Databases配置项

DATABASES = {
   
    'default': {
   
        'ENGINE': 'django.db.backends.mysql',  # 或者使用 mysql.connector.django
        'NAME': 'xxx',
        'USER': 'root',
        'PASSWORD': 'xxx',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

许多默认应用都依赖于至少一个数据表,所以在配置完数据库中需要创建一些表。

python manage.py migrate

这个命令会找寻settings中的INSTALLED_APPS列表中的所有应用,并创建必要的数据表信息以及迁移,如下图由于没有创建新的应用,所以只迁移了默认的数据表

在这里插入图片描述

可以进入mysql查看迁移结果

在这里插入图片描述

配置完数据库,接下来可以使用模型了,模型必须要在应用中使用,不过在使用应用前我们可以先创建一个Django自带管理工具

管理工具

由于Django为了方便开发者进行开发,于是其为我们省略了许多例如对用户增删改查的繁琐工作,其全自动的根据模型创建后台界面,也就是管理界面。管理工具也是项目中的一个应用,他是面向管理者准备的

  1. 首先我们需要激活这个应用。去掉urls.py中的注释
from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

如上图,由于前面我们知道url是负责映射url和视图的,那么我们运行项目后就可以通过’admin/'找到控制面板。此时访问http://127.0.0.1:8000/admin会发现需要输入用户名密码,下面创建管理员的用户名密码

  1. 创建管理员账号,进入命令界面
python manage.py createsuperuser

接着输入其需要的信息

Username: xxx
Email address: xxx
Password: xxx

然后大功告成,启动项目进入http://127.0.0.1:8000/admin

在这里插入图片描述

后面可以在应用中将模型注册到管理工具中,这样我们在管理界面就可以对应用的模型进行增删改了。

创建应用

在一个项目中,可以包含多个应用,比如一个博客系统的项目就能包含博客、论坛等应用,在Django中每个应用都是一个Python包,也就是带有__ init __.py的文件的目录,我们可以在项目中按需创建新的应用

命令模式

django-admin startapp article

或者使用

python manager.py startapp article

Pycharm手动创建麻烦,使用

在这里插入图片描述

能看到新的应用目录为

|-- article
	|-- migrations/
	|-- templates/ #自行新建
	|-- __init__.py
	|-- admin.py
	|-- apps.py
	|-- models.py
	|-- urls.py #需新建
	|-- tests.py
	|-- views.py

  • migrations目录,放置迁移代码(也就是定义数据表结构的地方),都是自动生成的
  • views.py存放MTV中的视图模型,在这里将数据整合到模板
  • admin.py是Django管理界面,可以在此将模型注册到管理工具中
  • test.py 编写测试用例的地方

创建应用后,需要在项目settings.py文件中安装应用。

INSTALLED_APPS = [
    'django.contrib.admin',
    ...
    'article', #这里添加你的应用
]
模型

提了这么多次模型,模型是什么呢,可以理解为类,而每个类对应与数据库中的一张或多张表。所以模型也就是数据库结构设计和附加的其它元数据。

模型是真实数据的简单明确的描述。它包含了储存的数据所必要的字段和行为

创建模型

我们进入到应用的models.py中编写,根据自己需求编写,这里简单就写个文章类包含文章内容、文章题目、发布时间以及作者类包含作者名字。事实上,存储文章内容可以使用其他类型的数据库。

我们使用的模型类都要继承自django.db.models.Model,每个模型类都跟可以有一些变量和方法,变量就代表数据库中的一个字段。而具体字段类型可以去Django官网查看。注意到下面Article类中有ForeignKey字段,很明显是外键的意思。

from django.db import models

class Author(models.Model):
    name = models.CharField(max_length=
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值