1. 以新闻内容为主的网站-Django。CMS
- 查看django官方网站。
- 查看django源码。
- 查看中文文档。
- 对于Django框架遵循MVC设计,并且有个专用名字:MVT。
model 只适用于关系型数据库。
建议使用谷歌浏览器。
- Django环境配置
- python 环境
因为Django是需要Python的环境,所以首先下载python,我这里使用的Anaconda 安装的python。
使用Anaconda安装python可以看这篇博客:pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
python --version
2. Django环境
需要安装全局Django
pip install django
查看版本
python -m django --version
- 创建Django项目
- 创建项目door_web_django_system
进入到你想要创建django项目的路径,door_web_django_system代表你的项目名,输入命令
django-admin startproject door_web_django_system
-
- 运行启动
进入到 door_web_django_system 项目,
cd door_web_django_system
运行项目
python manage.py runserver
按照上面爆红的提示执行命令
python manage.py migrate
然后再次执行运行命令
python manage.py runserver,结果如下:
浏览器打开http://localhost:8000/如下所示,代表Django项目创建并运行成功
3. Django项目介绍
- 介绍Django项目结构
(记得从终端中把项目关闭,后面可以从pycharm的终端中启动,比较方便)
首先使用pycharm打开。
找到设置,配置python环境,我的如下图所示
项目下面有个主包,和项目名同名,这里一般主要作为项目的配置包,不在这里写业务逻辑。
- urls.py: 主路由的跳转
- settings.py:项目的配置文件,包括mysql的配置等等
- asgi.py:
- wsgi.py:
- 第一个helloword
主包中创建 views.py,内容如下
from django.http import HttpResponse def hello_world(request): return HttpResponse("Hello, World!")
urls.py 中内容如下:
from django.contrib import admin from django.urls import path from . import views urlpatterns = [ path("admin/", admin.site.urls), path('hello/', views.hello_world) ]
运行项目,在浏览器输入http://localhost:8000/hello/,返回的字符串helloword如下所示,这样一个web服务器搭建好啦
- django的项目逻辑(和java对标)
- urls.py: 存放的是项目对外暴露的url请求,对应于java项目的controller层
- views.py: 存放的是项目的业务逻辑层和操作数据库,对应于java项目的services和dao层。
- models.py:存放的是对象实例,对应于mysql的表,Django中可以通过models中的对象类自动创建mysql中的表。对应于java中的bean,POJO类。
4. 创建Django应用
介绍
主包是和项目同名的一个包,一般只用来做配置使用。
一般会创建其他的包,然后主要写业务逻辑。
创建应用app01
进入djangoDemo目录,运行命令:(使用pycharm,可以在终端直接执行命令)
python manage.py startapp app01
然后需要在主包的 setting.py 中挂载刚刚创建的应用 app01
如果不挂载,在后面执行命令 python manage.py makemigrations时,会出现如下问题。该命令的使用时在第二章里学习使用。
app01的helloword
from django.shortcuts import render from django.http import HttpResponse def hello_world(request): return HttpResponse("app01 Hello, World!")
- app01中的 urls.py
from django.urls import path from . import views urlpatterns = [ path('hello/', views.hello_world) ]
- 主包中的 urls.py 增加了最后一行。
from django.contrib import admin from django.urls import path, include from . import views urlpatterns = [ path("admin/", admin.site.urls), path('hello/', views.hello_world), path('app01/', include('app01.urls')) ]
- 运行项目python .\manage.py runserver,浏览器运行下面两个url地址。
http://localhost:8000/app01/hello/。截图如下,说明应用创建成功。