前言
- 接了一个商用项目,要求使用django框架进行搭建后台web框架。因为之前没有写过Django相关的博文,于是记录一下,希望可以给大家提供一些思路,不足之处还望大家指正。
- 有兴趣可以添加我,一起探讨技术。
- 加V:
Fengfl1222
,名称:insist科技。 要资料
,申请备注为:CSDN+地方
,如CSDN山东。想接项目一起努力进步
,申请备注为:CSDN+地方+项目
,如CSDN+山东+项目,添加成功之后,可以发一份简历。- 本人介绍:211高校(北京交通大学)计算机研究生,本科双非计算机毕业后,校招进入军工,工作2个月离职后进入阿里,工作两年后离职考研,现已毕业,入职济南某大厂。主要技术栈:java、python、vue、react等web开发需求。已有开发团队,如果有空闲时间想一个接项目者,可以加我呦。
- 不按上诉规则添加好友者,不予通过。
- 加V:
一、Django环境配置
1、python 环境
因为Django是需要Python的环境,所以首先下载python,我这里使用的Anaconda 安装的python。
使用Anaconda安装python可以看这篇博客:[pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。](https://developer.aliyun.com/article/1626641
查看本机python环境:
python --version
2、Django环境
需要安装全局Django
pip install django
查看版本
python -m django --version
3、mysql环境
因为要使用到mysql,所以需要安装连接mysql的驱动,这里使用的是mysqlclient
,或者这里先不安装,后面可以根据提示进行手动安装,命令是一样的
pip install mysqlclient
如果安装了conda,可以使用如下命令
conda install mysqlclient
4、IDE:pycharm
开发Django框架的开发环境IDE使用的是jetbrain公司的pycharm,使用社区版本即可,好用方便,自行百度下载
二、第一次创建Django项目
1、创建项目door_web_django_system
进入到你想要创建django项目的路径,door_web_django_system代表你的项目名,输入命令
django-admin startproject door_web_django_system
2、运行启动
进入到
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项目创建并运行成功
三、Django项目介绍
1、介绍Django项目结构
(记得从终端中把项目关闭,后面可以从pycharm的终端中启动,比较方便)
首先使用pycharm打开。
找到设置,配置python环境,我的如下图所示项目下面有个主包,和项目名同名,这里一般主要作为项目的配置包,不在这里写业务逻辑
。
urls.py
: 主路由的跳转settings.py
:项目的配置文件,包括mysql的配置等等asgi.py
:wsgi.py
:
2、第一个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服务器搭建好啦
4、django的项目逻辑(和java对标)
urls.py
: 存放的是项目对外暴露的url请求,对应于java项目的controller
层views.py
: 存放的是项目的业务逻辑层和操作数据库,对应于java项目的services
和dao
层。models.py
:存放的是对象实例,对应于mysql的表,Django中可以通过models
中的对象类自动创建mysql中的表。对应于java中的bean
,POJO
类。
三、创建Django应用
1. 介绍
主包是和项目同名的一个包,一般只用来做配置使用。
一般会创建其他的包,然后主要写业务逻辑。
2. 创建应用app01
进入djangoDemo目录,运行命令:(使用pycharm,可以在终端直接执行命令)
python manage.py startapp app01
生成目录如下
然后需要在主包的setting.py
中挂载刚刚创建的应用app01
如果不挂载,在后面执行命令python manage.py makemigrations
时,会出现如下问题。该命令的使用时在第二章里学习使用。
3、app01的helloword
app01
中的views.py
from django.shortcuts import render
from django.http import HttpResponse
def hello_world(request):
return HttpResponse("app01 Hello, World!")
2. app01
中的urls.py
from django.urls import path
from . import views
urlpatterns = [
path('hello/', views.hello_world)
]
3. 主包
中的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'))
]
4. 运行项目,浏览器运行下面两个url地址。http://localhost:8000/hello/
。http://localhost:8000/app01/hello/
。截图如下,说明应用创建成功。
本节完成,下一节更精彩,进一步学习配置mysql,创建model实例,自动创建数据库表。