搭建虚拟环境

参考:https://www.yuque.com/cc8816/ql831i/gh8gao

安装 Django

在已激活的虚拟环境中,使用如下命令安装 Django:

  1. # 激活虚拟环境
  2. $ pipenv shell
  3. # 安装flask
  4. $ pip install django==2.2 # 若不指定版本,默认为最新

Pycharm配置虚拟环境

image.png

创建Django项目

使用命令行创建

  1. # django-admin startproject [项目名称]
  2. $ django-admin startproject first_project

image.png

使用Pycharm创建

如果pycharm是专业版的话,可以用pycharm安装Django

image.png

运行Django项目

  • 通过命令行运行:
    1. $ cd d:\Project_Django\first_project
    2. $ python manage.py runserver
    3. # 指定端口号,默认为8000
    4. $ python manage.py runserver 9000
    运行后,通过http://127.0.0.1:8000/来访问网站。

第一次运行runserver时会报错(不影响项目运行),因为Django默认使用sqlite数据库,需要执行 python manage.py migrate 进行初始化:
image.png

  • 通过pycharm运行Django项目:

打开manage.py,在右上角点击——edit configurations,然后按如下设置
image.png

项目结构介绍

  • manage.py:
    • 以后和项目交互基本上都是基于这个文件;
    • 一般是在终端输入 python manage.py [子命令]
    • 输入 python manage.py help 查看可执行的子命令。
  • settings.py:
    • 当前项目的设置项;
    • 所有和本项目相关的配置都是放在该文件。
  • urls.py:
  • wsgi.py:
    • 项目与WSGI协议兼容的web服务器入口;
    • 部署项目时需要用到,没有特殊需求无需修改。

创建项目app

app是django项目的组成部分,一个app代表项目中的一个模块,所有URL请求的响应都是由app来处理。

比如豆瓣里面有图书,电影,音乐,同城等都为豆瓣项目的模块。因此,django项目由许多app组成。

在命令行创建app:

  1. $ cd d:\Project_Django\first_project
  2. $ python manage.py startapp [app名称]

app中的文件说明

  1. __init__.py:说明目录是一个Python模块;
  2. models.py 和数据库相关的内容;
  3. views.py 接收请求,处理数据与MT进行交互;
  4. tests.py 写测试代码的文件(暂时不需要关心);
  5. admin.py 网站后台管理相关;

应用注册

建立应用和项目之间的联系,需要对应用进行注册,修改 settings.py 中的 INSTALLED_APPS 配置项。
image.png

Django初体验

  1. # urls.py 内容
  2. from django.contrib import admin
  3. from django.urls import path
  4. from django.http import HttpResponse
  5. # 导入创建的app
  6. # from movie.views import movie
  7. from movie import views
  8. """
  9. 1、必须传参request
  10. 2、返回值必须为HttpResponse类,或其子类对象
  11. """
  12. def index(request):
  13. return HttpResponse("Hello World")
  14. # def movie(request):
  15. # return HttpResponse("电影页面")
  16. urlpatterns = [
  17. path('admin/', admin.site.urls),
  18. path('', index),
  19. # path('movie/', movie),
  20. path('movie/', views.movie),
  21. ]


创建app - movie:**

  1. $ python manage.py startapp movie

image.png

DEBUG模式

Django默认已开启debug模式:

  • 修改代码后按下ctrl+s,Django会自动重启项目;
  • 若项目代码出现了问题,在浏览器和控制台中会打印错误信息;
  • 如果项目上线,需关闭debug模式,不然有很大的安全隐患;

关闭DEBUG模式

在setting文件中,设置 DEBUG = False