1、 python学习教程
https://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html
2、 .whl文件下载地址
https://www.lfd.uci.edu/~gohlke/pythonlibs/
3、Django启动报错:Django 'utf-8' codec can't decode byte 0xc6 in position 2: invalid continuation byte
https://blog.csdn.net/ljl6158999/article/details/100061147
修改计算机名即可
一、创建项目
1、创建项目命令以及目录结构:django-admin.py startproject mysite 【django-admin.py可以不带.py】
mysite/
├── mysite
│ ├── __init__.py
│ ├── asgi.py 【异步的WSGI,参考:https://www.cnblogs.com/djangocn/p/12694766.html】
│ ├── settings.py 【配置文件】
│ ├── urls.py 【URL声明】
│ └── wsgi.py 【作为项目的运行在WSGI兼容的Web服务器的入口】
└── manage.py
2、启动命令,在mysite项目下运行:
python manage.py runserver 8000 【manage.py:一种可以使用各种方式管理Django项目的命令行工具】
打开浏览器,访问http://127.0.0.1:8000,可以看到服务器已经在运行
二、新建APP
一个网站可能有多个功能。我们可以在Django下,以app为单位,模块化的管理,而不是将所有的东西都丢到一个文件夹中
1、创建新的app:python manage.py startapp demo1
2、把新的app加到settings.py中的INSTALL_APPS中
(新建的 app 如果不加到 INSTALL_APPS 中的话, django 就不能自动找到app中的模板文件(app-name/templates/下的文件)和静态文件(app-name/static/中的文件))
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'demo1' ]
3、URL声明
修改urls.py 中的urlpatterns
from django.contrib import admin from django.urls import path from demo1.views import first_page, second_page # 这里拿到view中的函数first_page urlpatterns = [ path('admin/', admin.site.urls), path('first_page', first_page), # 然后在这里指定first_page的访问路径 path('second_page', second_page), ]
4、templates
app 中新建一个 templates 文件夹,在templates中新建一个 home.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>我的第一个网页</title> </head> </html>
5、view
修改views.py 使用render的时候,Django 会自动找到 INSTALLED_APPS 中列出的各个 app 下的 templates 中的文件
# Create your views here. from django.http import HttpResponse from django.shortcuts import render def first_page(request): return HttpResponse("<p>世界好</p>") def second_page(request): return render(request, 'home.html')
6、访问
启动项目:python manage.py runserver 8000
并访问:http://127.0.0.1:8000/first_page、http://127.0.0.1:8000/second_page