栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Django学期总结

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Django学期总结

一.什么是web框架?

框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统

二.MVC和MTV模式

MVC就是把web应用分为模型,控制器,视图三层

  • 模型负责业务对象与数据库的对象
  • 视图负责与用户的交互
  • 控制器©接受用户的输入调用模型和视图完成用户的请求

Django的MTV模式本质上与MVC模式没有什么差别,只是定义上有些许不同,Django的MTV分别代表:

  • Model(模型):负责业务对象与数据库的对象(ORM)
  • Template(模版):负责如何把页面展示给用户
  • View(视图):负责业务逻辑,并在适当的时候调用Model和Template
  • Django还有一个url分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template
三.django的流程和命令行工具
#安装: 
		pip3 install django

    #1  创建project
        django-admin startproject mysite

	#2  创建APP              
		python mannage.py startapp  app_name
		django-admin startapp app_name

    #3  settings配置    
       TEMPLATES
       STATICFILES_DIRS=(
            os.path.join(BASE_DIR,"statics"),
        )
       STATIC_URL = '/static/' 
	
	#4  根据需求设计代码           
	   url.py
       view.py

    #5  使用模版
       render(req,"index.html")   

    #6  启动项目
       python manage.py runserver  127.0.0.1:8090
 
    #7  连接数据库,操作数据
       model.py
        生成同步数据库的脚本:python manage.py makemigrations  
		同步数据库:  python manage.py migrate 
        清空数据库: python manage.py  flush

	#8  查询某个命令的详细信息
        django-admin.py  help  startapp
四.Django URL (路由系统)

URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表

urlpatterns = [
    url(正则表达式, views视图函数,参数,别名),
]
参数说明:
一个正则表达式字符串
一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
可选的要传递给视图函数的默认参数(字典形式)
一个可选的name参数
五.Django Views(视图函数)

http请求中产生两个核心对象:

  • http请求:HttpRequest对象
  • http响应:HttpResponse对象
六.Template(模板语言)基础 1. 模版的组成
HTML代码+逻辑控制代码
2.逻辑控制代码的组成 2.1变量(使用双大括号来引用变量):
  • 语法格式: {{var_name}}

Template和Context对象:

t = Template('Hello, {{ name }}')
for name in ('John', 'Julie', 'Pat'):
    print t.render(Context({'name': name}))

模板对象可以重复使用

def current_time(req):
    now=datetime.datetime.now()
    return render(req, 'current_datetime.html', {'current_date':now})

2.2标签(tag)的使用(使用大括号和百分比的组合来表示使用tag)
  • {% if %} 的使用:

    {% if %}标签计算一个变量值,如果是“true”,即它存在、不为空并且不是false的boolean值,系统则会显示{% if %}和{% endif %}间的所有内容

2.3自定义filter和simple_tag

a. 在app中创建templatetags模块(必须的)
b. 创建任意 .py 文件,如:my_tags.py
c. 在使用自定义simple_tag和filter的html文件中导入之前创建的 my_tags.py :{% load my_tags %}
d. 使用simple_tag和filter(如何调用)
e. 在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag.

七.Models 1.数据库的配置 1.1django默认支持sqlite,mysql, oracle,postgresql数据库 1.2在django的项目中会默认使用sqlite数据库,在settings里有如下设置:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

如果我们想要更改数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'books',    #你的数据库名称
        'USER': 'root',   #你的数据库用户名
        'PASSWORD': '', #你的数据库密码
        'HOST': '',  #你的数据库主机,留空默认为localhost
        'PORT': '3306', #你的数据库端口
    }
}

  • django默认你导入的驱动是MySQLdb,可是MySQLdb对于py3有很大问题,所以我们需要的驱动是PyMySQL
  • 我们只需要找到项目名文件下的__init__,在里面写入:
import pymysql
pymysql.install_as_MySQLdb()

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/958125.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号