Django学习笔记(一)

简介: image.png最近有个需求,老大让用 Django 来做,以前入门 Python 时就听过 Django 的大名,今日一见果然名不虚传~~~~。
img_50fd7b01d197a604ddc63988ee60a8f4.png
image.png

最近有个需求,老大让用 Django 来做,以前入门 Python 时就听过 Django 的大名,今日一见果然名不虚传~~~~。

特点

Django 最大的特点就是快速建站:

  1. 快速开发
  2. 内置应用
    后台admin
    用户认证系统auth
    会话系统sessions
  3. 安全性高
    表单验证
    SQL注入
    跨站点攻击
  4. 易于拓展

....很多,这里不一一列举。

Django 应用(app)的概念

项目VS应用
项目与应用之间有什么不同之处?应用是一个提供功能的 Web 应用 – 例如:一个博客系统、一个公共记录的数据库或者一个简单的投票系统。 项目是针对一个特定的 Web 网站相关的配置和其应用的组合。一个项目可以包含多个应用。一个应用可以在多个项目中使用。

Django使用应用来分割功能,也就是app,每个应用分别为不同的app。

例如:我们创建一个电商网站,那么里边的购物车、用户管理、支付系统都可以成为独立的模块,也就是独立的三个app,这些模块可以用在别的网站中,不单单只针对于当前网站。

Django Demo

Python版本2.7
Django版本1.8

查看已安装Django的版本:
python -c "import django;print(django.get_version())"

创建一个名为web_Demo的Django项目
命令:django-admin startproject web_Demo
完成后,查看目录结构:

img_e59ead9d12d9b587c7b2c64a54ca87b4.png
image.png

  • manage.py : 一个实用的命令行工具,可以让你以各种方式与该Django项目交互。可以在django-admin.py和manage.py查看源码的细节。
  • settings.py : 该项目的配置文件。
  • urls.py : 该项目的URL生明。
  • wsgi.py : 一个WSGI兼容的Web服务器入口。

接着,创建一个名为blog的应用(app):
python manage.py startapp blog
查看新的目录结构:

img_819a2513e157a224529bea4aa7ab8d59.png
image.png

应用模块中各文件的作用:

  • migrations:数据迁移模块
  • admin.py : 该应用的后台管理系统配置文件
  • apps.py : 当前应用的一些配置,1.9版本后才会自动生成,1.8 1.7都不会自动生成
  • models.py : 数据模型 使用ORM框架 django已经有所封装
  • tests.py : 自动化测试模块
  • views.py : 执行响应的逻辑代码,代码逻辑处理的主要地点,项目中大部分代码都在这里编写

然后,把blog app添加到配置文件中:
编辑settings.py:

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog'
)

解释一下上边的配置信息代表什么意思:

  • admin :身份验证系统
  • auth :
  • contenttypes:内容类型框架
  • sessions :session框架
  • messages :消息框架
  • staticfiles :静态文件框架

再执行命令python manage.py migrate

img_e90d76ec7d27ab99b229ae28fa884e81.png
image.png

完成。

Admin

Admin是Django自带的一个功能强大的自动化数据管理界面,被授权的用户可直接在admin中管理数据库。
Django提供了许多针对Admin的定制功能。

首先,创建超级用户查看admin系统:
python manage.py createsuperuser
输入用户名、邮箱、密码,这里密码要难一些,简单的密码可能会不行。

img_590976285662eefe601e84c474dd9413.png
image.png

启动web项目:
python manage.py runserver
这里默认8000端口,
浏览器中打开127.0.0.1/8000/admin

输入刚才设置的用户名密码:


img_5da967904bbd73de42d763e993e0b57b.png
image.png

登录:


img_de21713719355930b14cd7ca0e0c0662.png
image.png

可以看到admin界面。

这里显示的是英文的admin,我们可以通过配置改为中文的。
更改settings中的配置:

LANGUAGE_CODE = 'zh-Hans'
img_49ec3664084399a8018c4b8c99f28398.png
image.png

完成。

目录
相关文章
|
6月前
|
Python
基于Django的Python应用—学习笔记—功能完善
基于Django的Python应用—学习笔记—功能完善
|
6月前
|
存储 数据库 数据安全/隐私保护
基于Django的Python应用——学习笔记
基于Django的Python应用——学习笔记
|
安全 中间件 开发者
【Django学习笔记 - 9】:装饰器在类视图中的使用、中间件(开发中间件)、知识点小补充(子应用的集中管理)
【Django学习笔记 - 9】:装饰器在类视图中的使用、中间件(开发中间件)、知识点小补充(子应用的集中管理)
387 5
【Django学习笔记 - 9】:装饰器在类视图中的使用、中间件(开发中间件)、知识点小补充(子应用的集中管理)
|
数据库 数据安全/隐私保护 Python
【Django学习笔记 - 19】:认证、自定义认证、权限、限流
【Django学习笔记 - 19】:认证、自定义认证、权限、限流
281 0
【Django学习笔记 - 19】:认证、自定义认证、权限、限流
|
缓存 前端开发 数据库
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由2
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由
165 0
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由2
|
XML JSON 前端开发
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由
210 0
【Django学习笔记 - 18】:drf请求响应简介、基类(APIView、GenericAPIView)、mixin扩展类与三级视图、视图集与路由
|
XML JSON 前端开发
【Django学习笔记 - 17】:序列化和反序列化(restful接口小案例、DRF的工程搭建、序列化器与序列化、验证、保存)
【Django学习笔记 - 17】:序列化和反序列化(restful接口小案例、DRF的工程搭建、序列化器与序列化、验证、保存)
528 0
【Django学习笔记 - 17】:序列化和反序列化(restful接口小案例、DRF的工程搭建、序列化器与序列化、验证、保存)
|
JSON 前端开发 JavaScript
【Django学习笔记 - 16】:DRF概述、Web应用模式(前后端分离简介)
【Django学习笔记 - 16】:DRF概述、Web应用模式(前后端分离简介)
299 0
【Django学习笔记 - 16】:DRF概述、Web应用模式(前后端分离简介)
|
Python
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)2
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)
101 0
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)2