Django
Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。
入门
安装
pip
pycharm
安装完后会在Lib目录下下载django源码,在Scripts下生成django-admin.exe用于生成django项目
创建项目
cmd
1 2
| django-admin startproject 项目名称
|
pycharm
项目目录说明
1 2 3 4 5 6 7
| |-- 项目同名文件夹 | |-- __init__.py # 空的,标记这个软件包为python软件包 | |-- asgi.py # 接收网络请求(异步) | |-- settings.py # 项目的配置文件 | |-- urls.py # 访问路径和函数间的映射关系 | `-- wsgi.py # 接收网络请求(同步) `-- manage.py # 项目管理,启动项目,创建app,数据管理
|
App
类似java中maven项目的模块
创建app
1 2
| python manage.py startapp <app名>
|
注册app
1
| 在settings.py文件的INSTALLED_APPS中添加app的apps.py中的启动类
|
app目录结构
1 2 3 4 5 6 7 8
| |-- app名 | |-- __init__.py | |-- admin.py # django默认提供了admin后台管理 | |-- apps.py # app启动类 | |-- models.py # **对数据库操作** | |-- tests.py # 单元测试 | |-- views.py # **放与请求路径对应的函数** `-- manage.py
|
第一个项目
- 创建app
1
| python manage.py startapp HelloWorld
|
- settings.py的INSTALLED_APPS中注册app
1 2 3 4 5 6 7 8 9
| INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'HelloWorld.apps.HelloworldConfig', ]
|
- urls.py中加入映射
1 2 3 4 5
| urlpatterns = [ path('admin/', admin.site.urls), path('index/', views.index), ]
|
- 在views.py中编写对应函数
1 2
| def index(request): return HttpResponse("Hello World")
|
- 启动
1 2 3
| python manage.py runserver 或 pycharm 中绿色三角
|
- 页面访问
localhost:8000/index
模板
在app下建立templates目录来放置网页文件
static目录放静态文件
在函数中使用return render(request, "文件名")
来返回网页
搜索网页文件顺序
优先项目根目录的templates中找
要在配置文件的TEMPLATES中标识'DIRS': [os.path.join(BASE_DIR, 'templates')]
根据app注册顺序,在每个app的templates中找