django一
https://www.runoob.com/django/django-intro.html
安装
pip install Django
import django
print(django.get_version())
启动
您现在应该已经有了可用的管理工具 django-admin,Windows 如果没有配置环境变量可以用 django-admin。
我们可以来看下django-admin 的命令介绍
使用 django-admin 来创建 HelloWorld 项目:
django-admin startproject HelloWorld
# model
django-admin startapp TestModel
目录说明:
-
HelloWorld: 项目的容器。
-
manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
-
HelloWorld/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
-
HelloWorld/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
-
HelloWorld/settings.py: 该 Django 项目的设置/配置。
-
HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
-
HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
接下来我们进入 HelloWorld 目录输入以下命令,启动服务器:
python3 manage.py runserver 0.0.0.0:8000
0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000
Django会以为是公网来访问它,而实际上我是在本地访问,所以会访问失败
使用python [manage.py](http://manage.py/) runserver 8000
运行Django项目,测试成功!!!
视图和 URL 配置
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world ! ")
修改 urls.py 文件
from django.urls import path
from . import views
urlpatterns = [
path("", views.hello, name="hello"),
]
path() 函数
Django path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。
语法格式:
path(route, view, kwargs=None, name=None)
-
route: 字符串,定义 URL 的路径部分。可以包含变量,例如
<int:my_variable>
,以从 URL 中捕获参数并将其传递给视图函数。 -
view: 视图函数,处理与给定路由匹配的请求。可以是一个函数或一个基于类的视图。
-
kwargs(可选): 一个字典,包含传递给视图函数的额外关键字参数。
-
name(可选): 为 URL 路由指定一个唯一的名称,以便在代码的其他地方引用它。这对于在模板中生成 URL 或在代码中进行重定向等操作非常有用。
模板
创建 templates 目录并建立 runoob.html文件
<h1>{{ hello }}</h1>
向Django说明模板文件的路径,修改HelloWorld/settings.py,修改 TEMPLATES 中的 DIRS 为 [os.path.join(BASE_DIR, 'templates')]
修改 views.py,增加一个新的对象,用于向模板提交数据
HelloWorld/HelloWorld/views.py 文件代码:
from django.shortcuts import render
def runoob(request):
context = {}
context['hello'] = 'Hello World!'
return render(request, 'runoob.html', context)
HelloWorld/HelloWorld/urls.py 文件代码:
from django.urls import path
from . import views
urlpatterns = [
path('runoob/', views.runoob),
]
Django 模板标签
变量
模板语法:
view:{"HTML变量名" : "views变量名"}
HTML:{{变量名}}
列表 可以用 . 索引下标取出对应的元素。如 array.0
字典 可以用 .键 取出对应的值,如dict.k1
模板参考文档