-
Notifications
You must be signed in to change notification settings - Fork 99
Open
Description
Knowing yourself is the beginning of all wisdom.
0x01 Django
Django Blog学习总结Blog这个项目跟着书本断断续续的差不多20天,了解了Django开发的基本流程,顺带了点Bootstrap、Solr、Tomcat的知识Django主要组成部分urls.py- 指出什么样的
URL对应什么样的视图,利用了正则匹配来一一对应
- 指出什么样的
models.py- 数据模型,用
Python类来描述数据表,Django支持sqlite3(Python自带,无需安装),MySQL,PostgreSQL等数据库,只需在settings.py中更改配置即可切换数据库,每次编辑更改models.py文件,如果需要将改动应用到数据库中,需要进行数据迁移(也就是同步到数据库),利用makemigrations和makemigrate命令
- 数据模型,用
views.py- 页面的业务逻辑,处理用户发起的请求,通过渲染
tempaltes中的网页模板文件来显示内容
- 页面的业务逻辑,处理用户发起的请求,通过渲染
templates 文件夹HTML模板,用于被渲染
admin.pyforms.pysettings.pyDjango设置和配置文件
Django项目实践步骤- 创建一个
projectdjango-admin.py startproject project_name- 创建后,生成一个
project_name文件夹
project_name/ manage.py project_name/ __init__.py settings.py urls.py wsgi.pymanage.py: 一种命令行工具,允许以多种方式和Django项目进行交互,python manage.py help可以查看帮助,无需编辑__init__.py: 空文件,无需编辑,让Python认为这是开发所需文件settings.py:Django项目的设置和配置文件urls.py:Django项目的URL设置文件,利用正则匹配将URL和视图一一对应wsgi.py: 用WSGI应用的配置来运行项目
- 创建一个
app- 在
project_name文件夹内,创建
django-admin.py startapp app_name- 创建后,生成一个
app_name文件夹
app_name/ __init__.py admin.py apps.py models.py tests.py views.py migrations/ __init__.pymigrations文件夹 : 运行python manage.py makemigrations所产生的数据改动文件都会被放在此文件夹内
- 在
- 运行开发服务器
python manage.py runserver- 默认:
http://localhost:8000仅监听本地连接 - 更换端口:
python manage.py runserver 8888 - 允许外网或局域网访问:
python manage.py runserver 0.0.0.0:8000- 局域网访问:
http://192.168.0.103:8000
- 局域网访问:
- 默认:
- 创建一个
Django Tipsurls.py中的urlpatterns- 其中的每一个
URLpattern都是一个元组 - 比如:
('^p/$', fun1)- 此元组中第一个元素是模式匹配字符串(正则表达式),第二个元素是那个模式将使用的视图函数
Django在检查URL模式前,会移除每一个申请的URL开头的斜杠/,所以写URLpattern的时候前面不用写斜杠/,末尾结束如果是/$的话,如果匹配的时候,URL没有输入/,虽然不匹配,但是默认会将尾部没有斜杠/的申请URL,重定向至尾部包含斜杠的相同字眼URL(这个情况受settings.py中的APPEND_SLASH控制,默认APPEND_SLASH=True会自动添加斜杠,默认这个参数是没有的)
- 其中的每一个
Python Tips#!/usr/bin/env pythonShebang,类unix系统根据文件头决定脚本运行方式,可以直接在shell中输入./XX.py来运用文件关联程序来打开
Python搜索路径- 使用
import语句,Python会首先在当前目录查找,如果文件不存在,就在系统设置的目录查找
- 使用