Django入门(2)之pycharm创建Django项目
MVC设计模式
MVC框架的核心思想是:解耦
降低各功能模块之间的耦合性,方便变更,更容易重构代码,最大程度上实现代码的重用
M表示model,主要用于对数据库层的封装
V表示view,用于向用户展示结果
C表示controller,是核心,用于处理请求、获取数据、返回结果
MVT
M表示model,负责与数据库交互
V表示view,是核心,负责接收请求、获取数据、返回结果
T表示template,负责呈现内容到浏览器
搭建Django项目
在pycharm里搭建Django项目。
点击create new project,然后选择Django,再填写项目名称。最后点击创建就可以了。
如果本地没有安装与所选python版本对应Django版本,pycharm会自动下载相应的版本。
等待一段时间,创建成功后的结构如下:
选择监听所有IP(可选)
修改项目同名目录下的配置文件 web/web/settings.py,修改为ALLOWED_HOSTS = [‘*’]
在项目中创建app应用
在pycharm里的终端输入:python manage.py startapp home,生成名字为home的应用(文件夹).
并在此文件夹的__init__.py中输入
1 | import pymysql |
编辑视图
编写home/views.py文件代码:
1 | from django.shortcuts import render |
指定路由规则来执行视图函数
1 | # 1, 配置应用路由 |
使用模板文件
在templates文件夹下创建a.html文件,然后写入html代码。
1 | <body> |
在home/views.py文件中添加,使用render函数加载指定模板:
1 | def demo(request): |
在home/urls.py文件中加入一条路径:
1 | urlpatterns = [ |
在pycharm里不用配置模板目录,它已经配置完成。
路由的定义
url ==> 统一资源定位符
指得就是请求的 (url)地址
可以在项目中指定请求的url地址,来交给对应的视图函数进行解析
路由的特点:
路由就是在urls中进行规则的配置
按照从上往下的顺序来执行
如果匹配到,则加载指定的视图函数来执行
如果匹配不到,则抛出 404
1 | http://127.0.0.1:8000/web/articles/2003/ |
在home/views.py文件中添加.
1 | def special_case_2003(request): |
在home/urls.py文件中urlpatterns加入一条路径:
1 | # 路由参数 |
路由参数
路由参数就是把 url路径 中的一部分作为参数来使用
在定义路由规则时,使用小括号() 括起来的内容,将作为参数传递给视图函数
在home/views.py文件中添加.
1 | ##对应的视图函数 |
在home/urls.py文件中urlpatterns加入一条路径:
1 | from django.urls import re_path |
命名组 命名参数
和路由参数一样是用来获取url中路径作为参数来使用
不同的是 命名组会把当前参数作为 关键字参数传递给视图函数,因此对应的视图函数必须有关键字参数
在home/views.py文件中添加.
1 | #在对应的视图函数中则必须有对应的关键字参数 |
在home/urls.py文件中urlpatterns加入一条路径:
1 | # 命名组 使用?P<变量名> 方式来定义 |
面试题:
你会正则表达式吗?
答:我对正则表达式的理解是 :
是什么? 能干什么? 怎么用? 优缺点?
以上就是我对正则表达式的理解
1 | 正则表达式就是使用 字符串,转义字符,元字符来定义一个规则,去匹配或搜索一个指定的内容 |